bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8) __ __ / \ / \ ______ _ _ __ __ __ / /\ / /\ \ / __ \ | | | | / \ \ \ / / / / / / \ \ | | | | | | | | / /\ \ \ / \ \ \ \ / / | |__| | | |__| | / ____ \ | | \ \/ \ \/ / \_ ___/ \____/ /_/ \_\ |_| \__/ \__/ \ \__ \___\ by Red Hat Build, Store, and Distribute your Containers Startup timestamp: Fri Sep 26 08:31:33 UTC 2025 Running all default registry services without migration Running init script '/quay-registry/conf/init/certs_install.sh' /bin/bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8) Installing extra certificates found in /quay-registry/conf/stack/extra_ca_certs directory /bin/sh: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8) Running init script '/quay-registry/conf/init/client_certs.sh' /bin/bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8) Running init script '/quay-registry/conf/init/copy_config_files.sh' /bin/sh: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8) Running init script '/quay-registry/conf/init/d_validate_config_bundle.sh' Validating Configuration /bin/bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8) time="2025-09-26T08:31:34Z" level=debug msg="Validating AccessSettings" time="2025-09-26T08:31:34Z" level=debug msg="Validating ActionLogArchiving" time="2025-09-26T08:31:34Z" level=debug msg="Validating AppTokenAuthentication" time="2025-09-26T08:31:34Z" level=debug msg="Validating AutoPrune" time="2025-09-26T08:31:34Z" level=debug msg="Validating BitbucketBuildTrigger" time="2025-09-26T08:31:34Z" level=debug msg="Validating BuildManager" time="2025-09-26T08:31:34Z" level=debug msg="Validating Database" time="2025-09-26T08:31:34Z" level=debug msg="Scheme: postgresql" time="2025-09-26T08:31:34Z" level=debug msg="Host: quayregistry-quay-database:5432" time="2025-09-26T08:31:34Z" level=debug msg="Db: quayregistry-quay-database" time="2025-09-26T08:31:34Z" level=debug msg="Params: " time="2025-09-26T08:31:34Z" level=debug msg="Including params " time="2025-09-26T08:31:34Z" level=debug msg="Pinging database at hostname: quayregistry-quay-database:5432." time="2025-09-26T08:31:34Z" level=debug msg="Database version: 13.22" plpgsql pg_trgm time="2025-09-26T08:31:34Z" level=debug msg="Validating DistributedStorage" time="2025-09-26T08:31:34Z" level=debug msg="Using IBM Cloud/ODF/RadosGW storage." time="2025-09-26T08:31:34Z" level=debug msg="Storage parameters: " time="2025-09-26T08:31:34Z" level=debug msg="hostname: s3.openshift-storage.svc.cluster.local:443, bucket name: quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084, TLS enabled: true" time="2025-09-26T08:31:34Z" level=debug msg="Validating ElasticSearch" time="2025-09-26T08:31:34Z" level=debug msg="Validating Email" time="2025-09-26T08:31:34Z" level=debug msg="Validating GitHubBuildTrigger" time="2025-09-26T08:31:34Z" level=debug msg="Validating GitHubLogin" time="2025-09-26T08:31:34Z" level=debug msg="Validating GitLabBuildTrigger" time="2025-09-26T08:31:34Z" level=debug msg="Validating GoogleLogin" time="2025-09-26T08:31:34Z" level=debug msg="Validating HostSettings" time="2025-09-26T08:31:34Z" level=debug msg="Validating JWTAuthentication" time="2025-09-26T08:31:34Z" level=debug msg="Validating LDAP" time="2025-09-26T08:31:34Z" level=debug msg="Validating OIDC" time="2025-09-26T08:31:34Z" level=debug msg="Validating QuayDocumentation" time="2025-09-26T08:31:34Z" level=debug msg="Validating Redis" time="2025-09-26T08:31:34Z" level=debug msg="Address: quayregistry-quay-redis:6379" time="2025-09-26T08:31:34Z" level=debug msg="Username: " time="2025-09-26T08:31:34Z" level=debug msg="Password Len: 0" time="2025-09-26T08:31:34Z" level=debug msg="Ssl: " time="2025-09-26T08:31:34Z" level=debug msg="Address: quayregistry-quay-redis:6379" time="2025-09-26T08:31:34Z" level=debug msg="Username: " time="2025-09-26T08:31:34Z" level=debug msg="Password Len: 0" time="2025-09-26T08:31:34Z" level=debug msg="Ssl: " time="2025-09-26T08:31:34Z" level=debug msg="Validating RepoMirror" time="2025-09-26T08:31:34Z" level=debug msg="Validating SecurityScanner" time="2025-09-26T08:31:34Z" level=debug msg="Validating TeamSyncing" time="2025-09-26T08:31:34Z" level=debug msg="Validating TimeMachine" time="2025-09-26T08:31:34Z" level=debug msg="Validating UserVisibleSettings" +------------------------+-------+--------+ | Field Group | Error | Status | +------------------------+-------+--------+ | AccessSettings | - | 🟢 | +------------------------+-------+--------+ | ActionLogArchiving | - | 🟢 | +------------------------+-------+--------+ | AppTokenAuthentication | - | 🟢 | +------------------------+-------+--------+ | AutoPrune | - | 🟢 | +------------------------+-------+--------+ | BitbucketBuildTrigger | - | 🟢 | +------------------------+-------+--------+ | BuildManager | - | 🟢 | +------------------------+-------+--------+ | Database | - | 🟢 | +------------------------+-------+--------+ | DistributedStorage | - | 🟢 | +------------------------+-------+--------+ | ElasticSearch | - | 🟢 | +------------------------+-------+--------+ | Email | - | 🟢 | +------------------------+-------+--------+ | GitHubBuildTrigger | - | 🟢 | +------------------------+-------+--------+ | GitHubLogin | - | 🟢 | +------------------------+-------+--------+ | GitLabBuildTrigger | - | 🟢 | +------------------------+-------+--------+ | GoogleLogin | - | 🟢 | +------------------------+-------+--------+ | HostSettings | - | 🟢 | +------------------------+-------+--------+ | JWTAuthentication | - | 🟢 | +------------------------+-------+--------+ | LDAP | - | 🟢 | +------------------------+-------+--------+ | OIDC | - | 🟢 | +------------------------+-------+--------+ | QuayDocumentation | - | 🟢 | +------------------------+-------+--------+ | Redis | - | 🟢 | +------------------------+-------+--------+ | RepoMirror | - | 🟢 | +------------------------+-------+--------+ | SecurityScanner | - | 🟢 | +------------------------+-------+--------+ | TeamSyncing | - | 🟢 | +------------------------+-------+--------+ | TimeMachine | - | 🟢 | +------------------------+-------+--------+ | UserVisibleSettings | - | 🟢 | +------------------------+-------+--------+ Running init script '/quay-registry/conf/init/nginx_conf_create.sh' /bin/bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8) Running init script '/quay-registry/conf/init/supervisord_conf_create.sh' /bin/bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8) Running init script '/quay-registry/conf/init/zz_boot.sh' /bin/bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8) /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' return re.sub('[^\w]+', '_', self.name) /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') /quay-registry/boot.py:76: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). expiration = datetime.utcnow() + timedelta(minutes=minutes_until_expiration) 2025-09-26 08:31:38,650 INFO RPC interface 'supervisor' initialized 2025-09-26 08:31:38,651 CRIT Server 'unix_http_server' running without any HTTP authentication checking 2025-09-26 08:31:38,651 INFO supervisord started with pid 2 2025-09-26 08:31:39,653 INFO spawned: 'stdout' with pid 48 2025-09-26 08:31:39,655 INFO spawned: 'autopruneworker' with pid 49 2025-09-26 08:31:39,657 INFO spawned: 'blobuploadcleanupworker' with pid 50 2025-09-26 08:31:39,659 INFO spawned: 'builder' with pid 51 2025-09-26 08:31:39,661 INFO spawned: 'buildlogsarchiver' with pid 52 2025-09-26 08:31:39,663 INFO spawned: 'chunkcleanupworker' with pid 53 2025-09-26 08:31:39,665 INFO spawned: 'dnsmasq' with pid 54 2025-09-26 08:31:39,667 INFO spawned: 'expiredappspecifictokenworker' with pid 55 2025-09-26 08:31:39,670 INFO spawned: 'exportactionlogsworker' with pid 56 2025-09-26 08:31:39,672 INFO spawned: 'gcworker' with pid 57 2025-09-26 08:31:39,674 INFO spawned: 'globalpromstats' with pid 58 2025-09-26 08:31:39,676 INFO spawned: 'gunicorn-registry' with pid 59 2025-09-26 08:31:39,678 INFO spawned: 'gunicorn-secscan' with pid 60 2025-09-26 08:31:39,680 INFO spawned: 'gunicorn-web' with pid 61 2025-09-26 08:31:39,682 INFO spawned: 'logrotateworker' with pid 62 2025-09-26 08:31:39,684 INFO spawned: 'manifestbackfillworker' with pid 63 2025-09-26 08:31:39,687 INFO spawned: 'manifestsubjectbackfillworker' with pid 64 2025-09-26 08:31:39,689 INFO spawned: 'memcache' with pid 65 2025-09-26 08:31:39,691 INFO spawned: 'namespacegcworker' with pid 66 2025-09-26 08:31:39,693 INFO spawned: 'nginx' with pid 67 2025-09-26 08:31:39,696 INFO spawned: 'notificationworker' with pid 68 2025-09-26 08:31:39,774 INFO spawned: 'proxycacheblobworker' with pid 69 2025-09-26 08:31:39,781 INFO spawned: 'pushgateway' with pid 70 2025-09-26 08:31:39,787 INFO spawned: 'queuecleanupworker' with pid 71 2025-09-26 08:31:39,789 INFO spawned: 'quotaregistrysizeworker' with pid 72 2025-09-26 08:31:39,792 INFO spawned: 'quotatotalworker' with pid 73 2025-09-26 08:31:39,869 INFO spawned: 'reconciliationworker' with pid 74 2025-09-26 08:31:39,871 INFO spawned: 'repositoryactioncounter' with pid 76 2025-09-26 08:31:39,886 INFO spawned: 'repositorygcworker' with pid 81 2025-09-26 08:31:39,896 INFO spawned: 'securityscanningnotificationworker' with pid 82 2025-09-26 08:31:39,976 INFO spawned: 'securityworker' with pid 86 2025-09-26 08:31:39,979 INFO spawned: 'servicekey' with pid 89 2025-09-26 08:31:39,987 INFO spawned: 'storagereplication' with pid 90 2025-09-26 08:31:40,073 INFO spawned: 'teamsyncworker' with pid 95 2025-09-26 08:31:40,780 INFO success: stdout entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,781 INFO success: autopruneworker entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,781 INFO success: blobuploadcleanupworker entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,781 INFO success: builder entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,781 INFO success: buildlogsarchiver entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,781 INFO success: chunkcleanupworker entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,781 INFO success: dnsmasq entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,781 INFO success: expiredappspecifictokenworker entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,781 INFO success: exportactionlogsworker entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,781 INFO success: gcworker entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,781 INFO success: globalpromstats entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,781 INFO success: gunicorn-registry entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,781 INFO success: gunicorn-secscan entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,782 INFO success: gunicorn-web entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,782 INFO success: logrotateworker entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,782 INFO success: manifestbackfillworker entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,782 INFO success: manifestsubjectbackfillworker entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,782 INFO success: memcache entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,782 INFO success: namespacegcworker entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,782 INFO success: nginx entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,782 INFO success: notificationworker entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,782 INFO success: proxycacheblobworker entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,782 INFO success: pushgateway entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) dnsmasq stderr | dnsmasq: started, version 2.79 cachesize 150 dnsmasq stderr | dnsmasq: compile time options: IPv6 GNU-getopt DBus no-i18n IDN2 DHCP DHCPv6 no-Lua TFTP no-conntrack ipset auth DNSSEC loop-detect inotify dnsmasq stderr | dnsmasq: reading /etc/resolv.conf dnsmasq stderr | dnsmasq: using nameserver 172.30.0.10#53 dnsmasq stderr | dnsmasq: read /etc/hosts - 7 addresses pushgateway stderr | ts=2025-09-26T08:31:40.073Z level=info caller=main.go:82 msg="starting pushgateway" version="(version=, branch=, revision=unknown)" pushgateway stderr | ts=2025-09-26T08:31:40.073Z level=info caller=main.go:83 msg="Build context" build_context="(go=go1.24.6 (Red Hat 1.24.6-1.module+el8.10.0+23407+428597c7) X:strictfipsruntime, platform=linux/amd64, user=, date=, tags=strictfipsruntime)" nginx stdout | 2025/09/26 08:31:39 [alert] 97#0: setpriority(-10) failed (13: Permission denied) pushgateway stderr | ts=2025-09-26T08:31:40.178Z level=info caller=tls_config.go:347 msg="Listening on" address=[::]:9091 pushgateway stderr | ts=2025-09-26T08:31:40.178Z level=info caller=tls_config.go:350 msg="TLS is disabled." http2=false address=[::]:9091 nginx stdout | 2025/09/26 08:31:39 [alert] 104#0: setpriority(-10) failed (13: Permission denied) nginx stdout | 2025/09/26 08:31:39 [alert] 98#0: setpriority(-10) failed (13: Permission denied) 2025-09-26 08:31:40,785 INFO success: queuecleanupworker entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) nginx stdout | 2025/09/26 08:31:39 [alert] 103#0: setpriority(-10) failed (13: Permission denied) nginx stdout | 2025/09/26 08:31:39 [alert] 105#0: setpriority(-10) failed (13: Permission denied) nginx stdout | 2025/09/26 08:31:39 [alert] 102#0: setpriority(-10) failed (13: Permission denied) nginx stdout | 2025/09/26 08:31:39 [alert] 107#0: setpriority(-10) failed (13: Permission denied) nginx stdout | 2025/09/26 08:31:39 [alert] 106#0: setpriority(-10) failed (13: Permission denied) 2025-09-26 08:31:40,787 INFO success: quotaregistrysizeworker entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) manifestsubjectbackfillworker stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' manifestsubjectbackfillworker stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) manifestsubjectbackfillworker stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' manifestsubjectbackfillworker stderr | return re.sub('[^\w]+', '_', self.name) 2025-09-26 08:31:40,990 INFO success: quotatotalworker entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,990 INFO success: reconciliationworker entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,990 INFO success: repositoryactioncounter entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,990 INFO success: repositorygcworker entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,991 INFO success: securityscanningnotificationworker entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,991 INFO success: securityworker entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,991 INFO success: servicekey entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2025-09-26 08:31:40,991 INFO success: storagereplication entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) manifestbackfillworker stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' manifestbackfillworker stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) 2025-09-26 08:31:40,991 INFO success: teamsyncworker entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) manifestbackfillworker stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' manifestbackfillworker stderr | return re.sub('[^\w]+', '_', self.name) quotatotalworker stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' quotatotalworker stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) quotatotalworker stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' quotatotalworker stderr | return re.sub('[^\w]+', '_', self.name) nginx stdout | 2025/09/26 08:31:48 [crit] 97#0: *1 connect() to unix:/tmp/gunicorn_web.sock failed (2: No such file or directory) while connecting to upstream, client: 10.130.2.2, server: , request: "GET /health/instance HTTP/1.1", upstream: "http://unix:/tmp/gunicorn_web.sock:/health/instance", host: "10.130.2.34:8080" nginx stdout | 2025/09/26 08:31:48 [crit] 97#0: *1 connect() to unix:/tmp/gunicorn_web.sock failed (2: No such file or directory) while connecting to upstream, client: 10.130.2.2, server: , request: "GET /health/instance HTTP/1.1", upstream: "http://unix:/tmp/gunicorn_web.sock:/quay-registry/static/502.html", host: "10.130.2.34:8080" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:31:48 +0000] "GET /health/instance HTTP/1.1" 502 157 "-" "kube-probe/1.32" (0.000 118 0.000 : 0.000) buildlogsarchiver stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' buildlogsarchiver stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) buildlogsarchiver stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' buildlogsarchiver stderr | return re.sub('[^\w]+', '_', self.name) exportactionlogsworker stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' exportactionlogsworker stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) globalpromstats stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' globalpromstats stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) exportactionlogsworker stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' exportactionlogsworker stderr | return re.sub('[^\w]+', '_', self.name) globalpromstats stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' globalpromstats stderr | return re.sub('[^\w]+', '_', self.name) blobuploadcleanupworker stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' blobuploadcleanupworker stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) teamsyncworker stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' teamsyncworker stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) blobuploadcleanupworker stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' blobuploadcleanupworker stderr | return re.sub('[^\w]+', '_', self.name) teamsyncworker stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' teamsyncworker stderr | return re.sub('[^\w]+', '_', self.name) notificationworker stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' notificationworker stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) autopruneworker stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' autopruneworker stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) buildlogsarchiver stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' buildlogsarchiver stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') notificationworker stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' notificationworker stderr | return re.sub('[^\w]+', '_', self.name) autopruneworker stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' autopruneworker stderr | return re.sub('[^\w]+', '_', self.name) exportactionlogsworker stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' exportactionlogsworker stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') chunkcleanupworker stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' chunkcleanupworker stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) teamsyncworker stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' teamsyncworker stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') chunkcleanupworker stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' chunkcleanupworker stderr | return re.sub('[^\w]+', '_', self.name) globalpromstats stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' globalpromstats stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') logrotateworker stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' logrotateworker stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) autopruneworker stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' autopruneworker stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') blobuploadcleanupworker stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' blobuploadcleanupworker stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') gcworker stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' gcworker stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) notificationworker stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' notificationworker stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') logrotateworker stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' logrotateworker stderr | return re.sub('[^\w]+', '_', self.name) securityscanningnotificationworker stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' securityscanningnotificationworker stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) manifestsubjectbackfillworker stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' manifestsubjectbackfillworker stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') securityworker stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' securityworker stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) gcworker stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' gcworker stderr | return re.sub('[^\w]+', '_', self.name) namespacegcworker stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' namespacegcworker stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) repositoryactioncounter stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' repositoryactioncounter stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) proxycacheblobworker stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' proxycacheblobworker stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) securityscanningnotificationworker stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' securityscanningnotificationworker stderr | return re.sub('[^\w]+', '_', self.name) expiredappspecifictokenworker stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' expiredappspecifictokenworker stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) securityworker stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' securityworker stderr | return re.sub('[^\w]+', '_', self.name) namespacegcworker stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' namespacegcworker stderr | return re.sub('[^\w]+', '_', self.name) repositoryactioncounter stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' repositoryactioncounter stderr | return re.sub('[^\w]+', '_', self.name) proxycacheblobworker stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' proxycacheblobworker stderr | return re.sub('[^\w]+', '_', self.name) expiredappspecifictokenworker stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' expiredappspecifictokenworker stderr | return re.sub('[^\w]+', '_', self.name) queuecleanupworker stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' queuecleanupworker stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) storagereplication stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' storagereplication stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) queuecleanupworker stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' queuecleanupworker stderr | return re.sub('[^\w]+', '_', self.name) storagereplication stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' storagereplication stderr | return re.sub('[^\w]+', '_', self.name) servicekey stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' servicekey stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) servicekey stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' servicekey stderr | return re.sub('[^\w]+', '_', self.name) manifestbackfillworker stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' manifestbackfillworker stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') chunkcleanupworker stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' chunkcleanupworker stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') securityscanningnotificationworker stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' securityscanningnotificationworker stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') securityworker stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' securityworker stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') repositoryactioncounter stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' repositoryactioncounter stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') proxycacheblobworker stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' proxycacheblobworker stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') logrotateworker stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' logrotateworker stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') quotaregistrysizeworker stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' quotaregistrysizeworker stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) expiredappspecifictokenworker stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' expiredappspecifictokenworker stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') gcworker stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' gcworker stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') repositorygcworker stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' repositorygcworker stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) namespacegcworker stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' namespacegcworker stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') storagereplication stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' storagereplication stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') reconciliationworker stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' reconciliationworker stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) quotaregistrysizeworker stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' quotaregistrysizeworker stderr | return re.sub('[^\w]+', '_', self.name) servicekey stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' servicekey stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') repositorygcworker stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' repositorygcworker stderr | return re.sub('[^\w]+', '_', self.name) queuecleanupworker stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' queuecleanupworker stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') reconciliationworker stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' reconciliationworker stderr | return re.sub('[^\w]+', '_', self.name) builder stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' builder stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) builder stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' builder stderr | return re.sub('[^\w]+', '_', self.name) quotaregistrysizeworker stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' quotaregistrysizeworker stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') quotatotalworker stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' quotatotalworker stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') repositorygcworker stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' repositorygcworker stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') nginx stdout | 2025/09/26 08:32:03 [crit] 104#0: *4 connect() to unix:/tmp/gunicorn_web.sock failed (2: No such file or directory) while connecting to upstream, client: 10.130.2.2, server: , request: "GET /health/instance HTTP/1.1", upstream: "http://unix:/tmp/gunicorn_web.sock:/health/instance", host: "10.130.2.34:8080" nginx stdout | 2025/09/26 08:32:03 [crit] 104#0: *4 connect() to unix:/tmp/gunicorn_web.sock failed (2: No such file or directory) while connecting to upstream, client: 10.130.2.2, server: , request: "GET /health/instance HTTP/1.1", upstream: "http://unix:/tmp/gunicorn_web.sock:/quay-registry/static/502.html", host: "10.130.2.34:8080" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:32:03 +0000] "GET /health/instance HTTP/1.1" 502 157 "-" "kube-probe/1.32" (0.000 118 0.000 : 0.000) reconciliationworker stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' reconciliationworker stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') gunicorn-secscan stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' gunicorn-secscan stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) gunicorn-secscan stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' gunicorn-secscan stderr | return re.sub('[^\w]+', '_', self.name) builder stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' builder stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') gunicorn-secscan stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' gunicorn-secscan stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') gunicorn-web stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' gunicorn-web stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) gunicorn-web stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' gunicorn-web stderr | return re.sub('[^\w]+', '_', self.name) gunicorn-web stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' gunicorn-web stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') teamsyncworker stdout | 2025-09-26 08:32:13,969 [95] [DEBUG] [__main__] Team syncing is disabled; sleeping nginx stdout | 2025/09/26 08:32:18 [crit] 98#0: *7 connect() to unix:/tmp/gunicorn_web.sock failed (2: No such file or directory) while connecting to upstream, client: 10.130.2.2, server: , request: "GET /health/instance HTTP/1.1", upstream: "http://unix:/tmp/gunicorn_web.sock:/health/instance", host: "10.130.2.34:8080" nginx stdout | 2025/09/26 08:32:18 [crit] 98#0: *7 connect() to unix:/tmp/gunicorn_web.sock failed (2: No such file or directory) while connecting to upstream, client: 10.130.2.2, server: , request: "GET /health/instance HTTP/1.1", upstream: "http://unix:/tmp/gunicorn_web.sock:/quay-registry/static/502.html", host: "10.130.2.34:8080" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:32:18 +0000] "GET /health/instance HTTP/1.1" 502 157 "-" "kube-probe/1.32" (0.000 118 0.000 : 0.000) buildlogsarchiver stdout | 2025-09-26 08:32:20,274 [52] [DEBUG] [workers.worker] Scheduling worker. buildlogsarchiver stdout | 2025-09-26 08:32:20,275 [52] [INFO] [apscheduler.scheduler] Scheduler started buildlogsarchiver stdout | 2025-09-26 08:32:20,288 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:32:20,289 [52] [DEBUG] [apscheduler.scheduler] No jobs; waiting until a job is added buildlogsarchiver stdout | 2025-09-26 08:32:20,374 [52] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:32:47.375102 buildlogsarchiver stdout | 2025-09-26 08:32:20,382 [52] [INFO] [apscheduler.scheduler] Added job "ArchiveBuildLogsWorker._archive_redis_buildlogs" to job store "default" buildlogsarchiver stdout | 2025-09-26 08:32:20,384 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:32:20,384 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:32:47.375102+00:00 (in 26.990417 seconds) blobuploadcleanupworker stdout | 2025-09-26 08:32:27,980 [50] [DEBUG] [workers.worker] Scheduling worker. blobuploadcleanupworker stdout | 2025-09-26 08:32:27,981 [50] [INFO] [apscheduler.scheduler] Scheduler started blobuploadcleanupworker stdout | 2025-09-26 08:32:28,069 [50] [DEBUG] [apscheduler.scheduler] Looking for jobs to run blobuploadcleanupworker stdout | 2025-09-26 08:32:28,069 [50] [DEBUG] [apscheduler.scheduler] No jobs; waiting until a job is added blobuploadcleanupworker stdout | 2025-09-26 08:32:28,075 [50] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 09:16:30.076105 blobuploadcleanupworker stdout | 2025-09-26 08:32:28,076 [50] [INFO] [apscheduler.scheduler] Added job "BlobUploadCleanupWorker._try_cleanup_uploads" to job store "default" blobuploadcleanupworker stdout | 2025-09-26 08:32:28,078 [50] [DEBUG] [apscheduler.scheduler] Looking for jobs to run blobuploadcleanupworker stdout | 2025-09-26 08:32:28,078 [50] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 09:16:30.076105+00:00 (in 2641.997867 seconds) globalpromstats stdout | 2025-09-26 08:32:28,783 [58] [DEBUG] [workers.worker] Scheduling worker. globalpromstats stdout | 2025-09-26 08:32:28,784 [58] [INFO] [apscheduler.scheduler] Scheduler started globalpromstats stdout | 2025-09-26 08:32:28,882 [58] [DEBUG] [apscheduler.scheduler] Looking for jobs to run globalpromstats stdout | 2025-09-26 08:32:28,882 [58] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:37:51.883387 globalpromstats stdout | 2025-09-26 08:32:28,890 [58] [INFO] [apscheduler.scheduler] Added job "GlobalPrometheusStatsWorker._try_report_stats" to job store "default" globalpromstats stdout | 2025-09-26 08:32:28,889 [58] [DEBUG] [apscheduler.scheduler] No jobs; waiting until a job is added globalpromstats stdout | 2025-09-26 08:32:28,969 [58] [DEBUG] [apscheduler.scheduler] Looking for jobs to run globalpromstats stdout | 2025-09-26 08:32:28,969 [58] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:51.883387+00:00 (in 322.914013 seconds) notificationworker stdout | 2025-09-26 08:32:29,481 [68] [DEBUG] [workers.worker] Scheduling worker. notificationworker stdout | 2025-09-26 08:32:29,495 [68] [INFO] [apscheduler.scheduler] Scheduler started notificationworker stdout | 2025-09-26 08:32:29,691 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:32:29,691 [68] [DEBUG] [apscheduler.scheduler] No jobs; waiting until a job is added notificationworker stdout | 2025-09-26 08:32:29,691 [68] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:32:30.692901 notificationworker stdout | 2025-09-26 08:32:29,770 [68] [INFO] [apscheduler.scheduler] Added job "QueueWorker.poll_queue" to job store "default" notificationworker stdout | 2025-09-26 08:32:29,770 [68] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:35:41.771359 notificationworker stdout | 2025-09-26 08:32:29,770 [68] [INFO] [apscheduler.scheduler] Added job "QueueWorker.update_queue_metrics" to job store "default" notificationworker stdout | 2025-09-26 08:32:29,770 [68] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:32:37.771811 notificationworker stdout | 2025-09-26 08:32:29,771 [68] [INFO] [apscheduler.scheduler] Added job "QueueWorker.run_watchdog" to job store "default" notificationworker stdout | 2025-09-26 08:32:29,773 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:32:29,773 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:32:30.692901+00:00 (in 0.919668 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:32:29,788 [64] [DEBUG] [workers.worker] Scheduling worker. manifestsubjectbackfillworker stdout | 2025-09-26 08:32:29,790 [64] [INFO] [apscheduler.scheduler] Scheduler started manifestsubjectbackfillworker stdout | 2025-09-26 08:32:29,983 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:32:29,983 [64] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:32:33.984400 manifestsubjectbackfillworker stdout | 2025-09-26 08:32:29,984 [64] [INFO] [apscheduler.scheduler] Added job "ManifestSubjectBackfillWorker._backfill_manifest_subject" to job store "default" manifestsubjectbackfillworker stdout | 2025-09-26 08:32:29,984 [64] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:33:17.985743 manifestsubjectbackfillworker stdout | 2025-09-26 08:32:29,985 [64] [INFO] [apscheduler.scheduler] Added job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type" to job store "default" manifestsubjectbackfillworker stdout | 2025-09-26 08:32:29,983 [64] [DEBUG] [apscheduler.scheduler] No jobs; waiting until a job is added manifestsubjectbackfillworker stdout | 2025-09-26 08:32:29,985 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:32:29,985 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:32:33.984400+00:00 (in 3.999151 seconds) proxycacheblobworker stdout | 2025-09-26 08:32:30,296 [69] [DEBUG] [__main__] Starting proxy cache blob worker proxycacheblobworker stdout | 2025-09-26 08:32:30,394 [69] [DEBUG] [workers.worker] Scheduling worker. proxycacheblobworker stdout | 2025-09-26 08:32:30,472 [69] [INFO] [apscheduler.scheduler] Scheduler started proxycacheblobworker stdout | 2025-09-26 08:32:30,475 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:32:30,476 [69] [DEBUG] [apscheduler.scheduler] No jobs; waiting until a job is added proxycacheblobworker stdout | 2025-09-26 08:32:30,476 [69] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:32:32.477454 proxycacheblobworker stdout | 2025-09-26 08:32:30,479 [69] [INFO] [apscheduler.scheduler] Added job "QueueWorker.poll_queue" to job store "default" proxycacheblobworker stdout | 2025-09-26 08:32:30,480 [69] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:32:42.481458 proxycacheblobworker stdout | 2025-09-26 08:32:30,481 [69] [INFO] [apscheduler.scheduler] Added job "QueueWorker.update_queue_metrics" to job store "default" proxycacheblobworker stdout | 2025-09-26 08:32:30,482 [69] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:33:26.483749 proxycacheblobworker stdout | 2025-09-26 08:32:30,484 [69] [INFO] [apscheduler.scheduler] Added job "QueueWorker.run_watchdog" to job store "default" proxycacheblobworker stdout | 2025-09-26 08:32:30,481 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:32:30,486 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:32:32.477454+00:00 (in 1.991401 seconds) proxycacheblobworker stdout | 2025-09-26 08:32:30,487 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:32:30,487 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:32:32.477454+00:00 (in 1.989544 seconds) repositoryactioncounter stdout | 2025-09-26 08:32:30,489 [76] [DEBUG] [workers.worker] Scheduling worker. repositoryactioncounter stdout | 2025-09-26 08:32:30,491 [76] [INFO] [apscheduler.scheduler] Scheduler started repositoryactioncounter stdout | 2025-09-26 08:32:30,587 [76] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositoryactioncounter stdout | 2025-09-26 08:32:30,587 [76] [DEBUG] [apscheduler.scheduler] No jobs; waiting until a job is added repositoryactioncounter stdout | 2025-09-26 08:32:30,588 [76] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 12:18:52.589117 repositoryactioncounter stdout | 2025-09-26 08:32:30,589 [76] [INFO] [apscheduler.scheduler] Added job "RepositoryActionCountWorker._run_counting" to job store "default" repositoryactioncounter stdout | 2025-09-26 08:32:30,669 [76] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositoryactioncounter stdout | 2025-09-26 08:32:30,669 [76] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 12:18:52.589117+00:00 (in 13581.919731 seconds) notificationworker stdout | 2025-09-26 08:32:30,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:32:30,778 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:32:30 GMT)" (scheduled at 2025-09-26 08:32:30.692901+00:00) notificationworker stdout | 2025-09-26 08:32:30,778 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:32:37.771811+00:00 (in 6.993267 seconds) notificationworker stdout | 2025-09-26 08:32:30,778 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:32:30,779 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 32, 30, 778762), True, datetime.datetime(2025, 9, 26, 8, 32, 30, 778762), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:32:30,795 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:32:30,869 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:32:30,873 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:32:40 GMT)" executed successfully proxycacheblobworker stdout | 2025-09-26 08:32:32,478 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:32:32,586 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:32:32 GMT)" (scheduled at 2025-09-26 08:32:32.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:32:32,586 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:32:32,587 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 32, 32, 586580), True, datetime.datetime(2025, 9, 26, 8, 32, 32, 586580), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:32:32,588 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:32:42.477454+00:00 (in 9.888851 seconds) proxycacheblobworker stdout | 2025-09-26 08:32:32,670 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:32:32,670 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:32:32,672 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:32:42 GMT)" executed successfully nginx stdout | 2025/09/26 08:32:33 [crit] 102#0: *10 connect() to unix:/tmp/gunicorn_web.sock failed (2: No such file or directory) while connecting to upstream, client: 10.130.2.2, server: , request: "GET /health/instance HTTP/1.1", upstream: "http://unix:/tmp/gunicorn_web.sock:/health/instance", host: "10.130.2.34:8080" nginx stdout | 2025/09/26 08:32:33 [crit] 102#0: *10 connect() to unix:/tmp/gunicorn_web.sock failed (2: No such file or directory) while connecting to upstream, client: 10.130.2.2, server: , request: "GET /health/instance HTTP/1.1", upstream: "http://unix:/tmp/gunicorn_web.sock:/quay-registry/static/502.html", host: "10.130.2.34:8080" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:32:33 +0000] "GET /health/instance HTTP/1.1" 502 157 "-" "kube-probe/1.32" (0.000 118 0.000 : 0.000) manifestsubjectbackfillworker stdout | 2025-09-26 08:32:33,984 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:32:34,079 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:32:33 GMT)" (scheduled at 2025-09-26 08:32:33.984400+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:32:34,080 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:17.985743+00:00 (in 43.905685 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:32:34,083 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."subject_backfilled" = %s) OR ("t1"."subject_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:32:34,170 [64] [DEBUG] [__main__] Manifest subject backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:32:34,170 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:32:34,170 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:33:33 GMT)" executed successfully storagereplication stdout | 2025-09-26 08:32:35,072 [90] [DEBUG] [__main__] Full storage replication disabled; skipping expiredappspecifictokenworker stdout | 2025-09-26 08:32:35,491 [55] [DEBUG] [__main__] Starting expired app specific token GC worker expiredappspecifictokenworker stdout | 2025-09-26 08:32:35,493 [55] [DEBUG] [__main__] Found expiration window: 1d expiredappspecifictokenworker stdout | 2025-09-26 08:32:35,496 [55] [DEBUG] [workers.worker] Scheduling worker. expiredappspecifictokenworker stdout | 2025-09-26 08:32:35,569 [55] [INFO] [apscheduler.scheduler] Scheduler started expiredappspecifictokenworker stdout | 2025-09-26 08:32:35,571 [55] [DEBUG] [apscheduler.scheduler] Looking for jobs to run expiredappspecifictokenworker stdout | 2025-09-26 08:32:35,571 [55] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 09:03:46.572189 expiredappspecifictokenworker stdout | 2025-09-26 08:32:35,574 [55] [INFO] [apscheduler.scheduler] Added job "ExpiredAppSpecificTokenWorker._gc_expired_tokens" to job store "default" expiredappspecifictokenworker stdout | 2025-09-26 08:32:35,573 [55] [DEBUG] [apscheduler.scheduler] No jobs; waiting until a job is added expiredappspecifictokenworker stdout | 2025-09-26 08:32:35,577 [55] [DEBUG] [apscheduler.scheduler] Looking for jobs to run expiredappspecifictokenworker stdout | 2025-09-26 08:32:35,577 [55] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 09:03:46.572189+00:00 (in 1870.994347 seconds) manifestbackfillworker stdout | 2025-09-26 08:32:35,588 [63] [DEBUG] [workers.worker] Scheduling worker. manifestbackfillworker stdout | 2025-09-26 08:32:35,590 [63] [INFO] [apscheduler.scheduler] Scheduler started manifestbackfillworker stdout | 2025-09-26 08:32:35,591 [63] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestbackfillworker stdout | 2025-09-26 08:32:35,591 [63] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:56:53.592868 manifestbackfillworker stdout | 2025-09-26 08:32:35,670 [63] [INFO] [apscheduler.scheduler] Added job "ManifestBackfillWorker._backfill_manifests" to job store "default" manifestbackfillworker stdout | 2025-09-26 08:32:35,593 [63] [DEBUG] [apscheduler.scheduler] No jobs; waiting until a job is added manifestbackfillworker stdout | 2025-09-26 08:32:35,672 [63] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestbackfillworker stdout | 2025-09-26 08:32:35,673 [63] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:56:53.592868+00:00 (in 1457.919555 seconds) gunicorn-registry stderr | /app/lib/python3.12/site-packages/peewee.py:2784: SyntaxWarning: invalid escape sequence '\w' gunicorn-registry stderr | clean_field_names = re.sub('[^\w]+', '', '_'.join(accum)) gunicorn-registry stderr | /app/lib/python3.12/site-packages/peewee.py:5763: SyntaxWarning: invalid escape sequence '\w' gunicorn-registry stderr | return re.sub('[^\w]+', '_', self.name) builder stdout | 2025-09-26 08:32:36,074 [51] [DEBUG] [__main__] Building is disabled. Please enable the feature flag autopruneworker stdout | 2025-09-26 08:32:36,585 [49] [DEBUG] [workers.worker] Scheduling worker. autopruneworker stdout | 2025-09-26 08:32:36,587 [49] [INFO] [apscheduler.scheduler] Scheduler started securityworker stdout | 2025-09-26 08:32:36,595 [86] [DEBUG] [workers.worker] Scheduling worker. securityworker stdout | 2025-09-26 08:32:36,596 [86] [INFO] [apscheduler.scheduler] Scheduler started autopruneworker stdout | 2025-09-26 08:32:36,596 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:32:36,669 [49] [DEBUG] [apscheduler.scheduler] No jobs; waiting until a job is added autopruneworker stdout | 2025-09-26 08:32:36,597 [49] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:32:40.598100 autopruneworker stdout | 2025-09-26 08:32:36,670 [49] [INFO] [apscheduler.scheduler] Added job "AutoPruneWorker.prune" to job store "default" autopruneworker stdout | 2025-09-26 08:32:36,670 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:32:36,670 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:32:40.598100+00:00 (in 3.927376 seconds) gunicorn-registry stderr | /app/lib/python3.12/site-packages/playhouse/sqlite_ext.py:451: SyntaxWarning: invalid escape sequence '\s' gunicorn-registry stderr | _quote_re = re.compile('(?:[^\s"]|"(?:\\.|[^"])*")+') securityworker stdout | 2025-09-26 08:32:36,682 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:32:36,682 [86] [DEBUG] [apscheduler.scheduler] No jobs; waiting until a job is added securityworker stdout | 2025-09-26 08:32:36,682 [86] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:32:37.683505 securityworker stdout | 2025-09-26 08:32:36,683 [86] [INFO] [apscheduler.scheduler] Added job "SecurityWorker._index_in_scanner" to job store "default" securityworker stdout | 2025-09-26 08:32:36,683 [86] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:32:41.684816 securityworker stdout | 2025-09-26 08:32:36,684 [86] [INFO] [apscheduler.scheduler] Added job "SecurityWorker._index_recent_manifests_in_scanner" to job store "default" securityworker stdout | 2025-09-26 08:32:36,684 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:32:36,684 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:32:37.683505+00:00 (in 0.999243 seconds) securityworker stdout | 2025-09-26 08:32:37,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:32:37,691 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:32:37 GMT)" (scheduled at 2025-09-26 08:32:37.683505+00:00) securityworker stdout | 2025-09-26 08:32:37,691 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:32:41.684816+00:00 (in 3.993207 seconds) securityworker stdout | 2025-09-26 08:32:37,769 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:32:37,769 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state notificationworker stdout | 2025-09-26 08:32:37,772 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:32:37,772 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:32:40.692901+00:00 (in 2.920474 seconds) securityworker stdout | 2025-09-26 08:32:37,772 [86] [DEBUG] [urllib3.connectionpool] Starting new HTTP connection (1): quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 notificationworker stdout | 2025-09-26 08:32:37,772 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:33:37 GMT)" (scheduled at 2025-09-26 08:32:37.771811+00:00) notificationworker stdout | 2025-09-26 08:32:37,772 [68] [DEBUG] [workers.queueworker] Running watchdog. notificationworker stdout | 2025-09-26 08:32:37,772 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:33:37 GMT)" executed successfully securityworker stdout | 2025-09-26 08:32:37,792 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:32:37,873 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:32:37,890 [86] [DEBUG] [peewee] ('SELECT Min("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:32:37,969 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:32:37,969 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:33:07 GMT)" executed successfully logrotateworker stdout | 2025-09-26 08:32:38,182 [62] [DEBUG] [__main__] Action log rotation worker not enabled; skipping namespacegcworker stdout | 2025-09-26 08:32:38,694 [66] [DEBUG] [__main__] Starting namespace GC worker namespacegcworker stdout | 2025-09-26 08:32:38,701 [66] [DEBUG] [workers.worker] Scheduling worker. namespacegcworker stdout | 2025-09-26 08:32:38,771 [66] [INFO] [apscheduler.scheduler] Scheduler started namespacegcworker stdout | 2025-09-26 08:32:38,786 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:32:38,786 [66] [DEBUG] [apscheduler.scheduler] No jobs; waiting until a job is added namespacegcworker stdout | 2025-09-26 08:32:38,790 [66] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:32:59.791127 namespacegcworker stdout | 2025-09-26 08:32:38,792 [66] [INFO] [apscheduler.scheduler] Added job "QueueWorker.poll_queue" to job store "default" namespacegcworker stdout | 2025-09-26 08:32:38,792 [66] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:36:26.793442 namespacegcworker stdout | 2025-09-26 08:32:38,792 [66] [INFO] [apscheduler.scheduler] Added job "QueueWorker.update_queue_metrics" to job store "default" namespacegcworker stdout | 2025-09-26 08:32:38,792 [66] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:33:08.793810 namespacegcworker stdout | 2025-09-26 08:32:38,793 [66] [INFO] [apscheduler.scheduler] Added job "QueueWorker.run_watchdog" to job store "default" namespacegcworker stdout | 2025-09-26 08:32:38,793 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:32:38,793 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:32:59.791127+00:00 (in 20.997517 seconds) gunicorn-web stdout | 2025-09-26 08:32:39,473 [61] [DEBUG] [app] Loading default config. gunicorn-web stdout | 2025-09-26 08:32:39,476 [61] [DEBUG] [util.config.provider.basefileprovider] Applying config file: /quay-registry/conf/stack/config.yaml gunicorn-web stdout | 2025-09-26 08:32:39,487 [61] [DEBUG] [app] Loaded config gunicorn-web stdout | 2025-09-26 08:32:39,490 [61] [INFO] [util.ipresolver] Loading AWS IP ranges from disk gunicorn-web stdout | 2025-09-26 08:32:39,577 [61] [DEBUG] [util.ipresolver] Building AWS IP ranges gunicorn-web stdout | 2025-09-26 08:32:39,989 [61] [DEBUG] [util.ipresolver] Finished building AWS IP ranges gunicorn-web stdout | 2025-09-26 08:32:39,993 [61] [DEBUG] [botocore.hooks] Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane gunicorn-web stdout | 2025-09-26 08:32:39,996 [61] [DEBUG] [botocore.hooks] Changing event name from before-call.apigateway to before-call.api-gateway gunicorn-web stdout | 2025-09-26 08:32:39,997 [61] [DEBUG] [botocore.hooks] Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict gunicorn-web stdout | 2025-09-26 08:32:40,071 [61] [DEBUG] [botocore.hooks] Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration gunicorn-web stdout | 2025-09-26 08:32:40,072 [61] [DEBUG] [botocore.hooks] Changing event name from before-parameter-build.route53 to before-parameter-build.route-53 gunicorn-web stdout | 2025-09-26 08:32:40,073 [61] [DEBUG] [botocore.hooks] Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search gunicorn-web stdout | 2025-09-26 08:32:40,075 [61] [DEBUG] [botocore.hooks] Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section gunicorn-web stdout | 2025-09-26 08:32:40,080 [61] [DEBUG] [botocore.hooks] Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask gunicorn-web stdout | 2025-09-26 08:32:40,081 [61] [DEBUG] [botocore.hooks] Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section gunicorn-web stdout | 2025-09-26 08:32:40,082 [61] [DEBUG] [botocore.hooks] Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search gunicorn-web stdout | 2025-09-26 08:32:40,083 [61] [DEBUG] [botocore.hooks] Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section gunicorn-secscan stdout | 2025-09-26 08:32:40,178 [60] [DEBUG] [app] Loading default config. gunicorn-secscan stdout | 2025-09-26 08:32:40,180 [60] [DEBUG] [util.config.provider.basefileprovider] Applying config file: /quay-registry/conf/stack/config.yaml gunicorn-secscan stdout | 2025-09-26 08:32:40,192 [60] [DEBUG] [app] Loaded config gunicorn-secscan stdout | 2025-09-26 08:32:40,194 [60] [INFO] [util.ipresolver] Loading AWS IP ranges from disk gunicorn-secscan stdout | 2025-09-26 08:32:40,281 [60] [DEBUG] [util.ipresolver] Building AWS IP ranges gunicorn-web stdout | 2025-09-26 08:32:40,282 [61] [DEBUG] [data.database] Configuring database gunicorn-web stdout | 2025-09-26 08:32:40,284 [61] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:32:40,284 [61] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:32:40,286 [61] [INFO] [data.secscan_model] =============================== gunicorn-web stdout | 2025-09-26 08:32:40,287 [61] [INFO] [data.secscan_model] Using split secscan model: `[]` gunicorn-web stdout | 2025-09-26 08:32:40,288 [61] [INFO] [data.secscan_model] =============================== gunicorn-web stdout | 2025-09-26 08:32:40,288 [61] [DEBUG] [data.logs_model] Configuring log model gunicorn-web stdout | 2025-09-26 08:32:40,289 [61] [INFO] [data.logs_model] =============================== gunicorn-web stdout | 2025-09-26 08:32:40,290 [61] [INFO] [data.logs_model] Using logs model `` gunicorn-web stdout | 2025-09-26 08:32:40,291 [61] [INFO] [data.logs_model] =============================== autopruneworker stdout | 2025-09-26 08:32:40,669 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:32:40,684 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:32:40 GMT)" (scheduled at 2025-09-26 08:32:40.598100+00:00) autopruneworker stdout | 2025-09-26 08:32:40,685 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:10.598100+00:00 (in 29.912646 seconds) notificationworker stdout | 2025-09-26 08:32:40,769 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:32:40,769 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:32:50.692901+00:00 (in 9.923487 seconds) notificationworker stdout | 2025-09-26 08:32:40,769 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:32:50 GMT)" (scheduled at 2025-09-26 08:32:40.692901+00:00) notificationworker stdout | 2025-09-26 08:32:40,769 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:32:40,770 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 32, 40, 769822), True, datetime.datetime(2025, 9, 26, 8, 32, 40, 769822), 0, 'notification/%', 50, 1, 0]) autopruneworker stdout | 2025-09-26 08:32:40,772 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758871960771, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:32:40,776 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:32:40,776 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:32:40,778 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:33:10 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:32:40,785 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:32:40,785 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:32:40,787 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:32:50 GMT)" executed successfully gunicorn-secscan stdout | 2025-09-26 08:32:40,788 [60] [DEBUG] [util.ipresolver] Finished building AWS IP ranges gunicorn-secscan stdout | 2025-09-26 08:32:40,790 [60] [DEBUG] [botocore.hooks] Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane gunicorn-secscan stdout | 2025-09-26 08:32:40,794 [60] [DEBUG] [botocore.hooks] Changing event name from before-call.apigateway to before-call.api-gateway gunicorn-secscan stdout | 2025-09-26 08:32:40,796 [60] [DEBUG] [botocore.hooks] Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict gunicorn-secscan stdout | 2025-09-26 08:32:40,798 [60] [DEBUG] [botocore.hooks] Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration gunicorn-secscan stdout | 2025-09-26 08:32:40,869 [60] [DEBUG] [botocore.hooks] Changing event name from before-parameter-build.route53 to before-parameter-build.route-53 gunicorn-secscan stdout | 2025-09-26 08:32:40,871 [60] [DEBUG] [botocore.hooks] Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search gunicorn-secscan stdout | 2025-09-26 08:32:40,873 [60] [DEBUG] [botocore.hooks] Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section gunicorn-secscan stdout | 2025-09-26 08:32:40,877 [60] [DEBUG] [botocore.hooks] Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask gunicorn-secscan stdout | 2025-09-26 08:32:40,878 [60] [DEBUG] [botocore.hooks] Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section gunicorn-secscan stdout | 2025-09-26 08:32:40,879 [60] [DEBUG] [botocore.hooks] Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search gunicorn-secscan stdout | 2025-09-26 08:32:40,879 [60] [DEBUG] [botocore.hooks] Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section gcworker stdout | 2025-09-26 08:32:40,992 [57] [DEBUG] [workers.worker] Scheduling worker. gcworker stdout | 2025-09-26 08:32:40,994 [57] [INFO] [apscheduler.scheduler] Scheduler started gcworker stdout | 2025-09-26 08:32:41,082 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:32:41,082 [57] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:32:57.083344 gcworker stdout | 2025-09-26 08:32:41,084 [57] [INFO] [apscheduler.scheduler] Added job "GarbageCollectionWorker._garbage_collection_repos" to job store "default" gcworker stdout | 2025-09-26 08:32:41,084 [57] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:33:07.085344 gcworker stdout | 2025-09-26 08:32:41,084 [57] [INFO] [apscheduler.scheduler] Added job "GarbageCollectionWorker._scan_notifications" to job store "default" gcworker stdout | 2025-09-26 08:32:41,083 [57] [DEBUG] [apscheduler.scheduler] No jobs; waiting until a job is added gcworker stdout | 2025-09-26 08:32:41,091 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:32:41,092 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:32:57.083344+00:00 (in 15.990852 seconds) gunicorn-secscan stdout | 2025-09-26 08:32:41,273 [60] [DEBUG] [data.database] Configuring database gunicorn-secscan stdout | 2025-09-26 08:32:41,275 [60] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-secscan gunicorn-secscan stdout | 2025-09-26 08:32:41,276 [60] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-secscan stdout | 2025-09-26 08:32:41,278 [60] [INFO] [data.secscan_model] =============================== gunicorn-secscan stdout | 2025-09-26 08:32:41,279 [60] [INFO] [data.secscan_model] Using split secscan model: `[]` gunicorn-secscan stdout | 2025-09-26 08:32:41,280 [60] [INFO] [data.secscan_model] =============================== gunicorn-secscan stdout | 2025-09-26 08:32:41,281 [60] [DEBUG] [data.logs_model] Configuring log model gunicorn-secscan stdout | 2025-09-26 08:32:41,281 [60] [INFO] [data.logs_model] =============================== gunicorn-secscan stdout | 2025-09-26 08:32:41,282 [60] [INFO] [data.logs_model] Using logs model `` gunicorn-secscan stdout | 2025-09-26 08:32:41,283 [60] [INFO] [data.logs_model] =============================== securityworker stdout | 2025-09-26 08:32:41,769 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:32:41,769 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:07.683505+00:00 (in 25.914032 seconds) securityworker stdout | 2025-09-26 08:32:41,769 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:33:11 GMT)" (scheduled at 2025-09-26 08:32:41.684816+00:00) securityworker stdout | 2025-09-26 08:32:41,770 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:32:41,770 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:32:41,773 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:32:41,775 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:32:41,786 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:32:41,786 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:32:41,786 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:32:41,786 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:32:41,788 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 2]) securityworker stdout | 2025-09-26 08:32:41,790 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:32:41,790 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:32:41,790 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:32:41,790 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:32:41,790 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:32:41,790 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:32:41,790 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:32:41,791 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:32:41,791 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:32:41,791 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:32:41,791 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:32:41,792 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 27, 41, 775354), 1, 2]) securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:32:41,793 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:32:41,793 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:32:41,793 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:32:41,793 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:32:41,793 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:32:41,793 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:32:41,793 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:32:41,793 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:32:41,794 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:32:41,794 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:32:41,794 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:32:41,794 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 27, 41, 775354), 1, 2]) securityworker stdout | 2025-09-26 08:32:41,872 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:32:41,872 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:32:41,872 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:32:41,872 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:32:41,872 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:32:41,872 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:32:41,872 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:32:41,872 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:32:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:32:41,875 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:33:11 GMT)" executed successfully queuecleanupworker stdout | 2025-09-26 08:32:42,080 [71] [DEBUG] [workers.worker] Scheduling worker. queuecleanupworker stdout | 2025-09-26 08:32:42,081 [71] [INFO] [apscheduler.scheduler] Scheduler started queuecleanupworker stdout | 2025-09-26 08:32:42,174 [71] [DEBUG] [apscheduler.scheduler] Looking for jobs to run queuecleanupworker stdout | 2025-09-26 08:32:42,174 [71] [DEBUG] [workers.worker] First run scheduled for 2025-09-27 00:55:40.175323 queuecleanupworker stdout | 2025-09-26 08:32:42,179 [71] [DEBUG] [apscheduler.scheduler] No jobs; waiting until a job is added queuecleanupworker stdout | 2025-09-26 08:32:42,180 [71] [INFO] [apscheduler.scheduler] Added job "QueueCleanupWorker._cleanup_queue" to job store "default" queuecleanupworker stdout | 2025-09-26 08:32:42,180 [71] [DEBUG] [apscheduler.scheduler] Looking for jobs to run queuecleanupworker stdout | 2025-09-26 08:32:42,180 [71] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-27 00:55:40.175323+00:00 (in 58977.994927 seconds) chunkcleanupworker stdout | 2025-09-26 08:32:42,187 [53] [DEBUG] [__main__] Swift storage not detected; sleeping gunicorn-secscan stdout | 2025-09-26 08:32:42,391 [60] [DEBUG] [__config__] Starting secscan gunicorn with 2 workers and gevent worker class proxycacheblobworker stdout | 2025-09-26 08:32:42,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:32:42,478 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:32:42.481458+00:00 (in 0.003431 seconds) proxycacheblobworker stdout | 2025-09-26 08:32:42,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:32:52 GMT)" (scheduled at 2025-09-26 08:32:42.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:32:42,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:32:42,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 32, 42, 478467), True, datetime.datetime(2025, 9, 26, 8, 32, 42, 478467), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:32:42,481 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:32:42,488 [82] [DEBUG] [__main__] Starting security scanning notification worker proxycacheblobworker stdout | 2025-09-26 08:32:42,489 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:32:42,489 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:32:42,491 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:32:52 GMT)" executed successfully securityscanningnotificationworker stdout | 2025-09-26 08:32:42,492 [82] [DEBUG] [workers.worker] Scheduling worker. securityscanningnotificationworker stdout | 2025-09-26 08:32:42,494 [82] [INFO] [apscheduler.scheduler] Scheduler started gunicorn-secscan stderr | Traceback (most recent call last): gunicorn-secscan stderr | File "src/gevent/_abstract_linkable.py", line 287, in gevent._gevent_c_abstract_linkable.AbstractLinkable._notify_links gunicorn-secscan stderr | File "src/gevent/_abstract_linkable.py", line 333, in gevent._gevent_c_abstract_linkable.AbstractLinkable._notify_links gunicorn-secscan stderr | AssertionError: (None, ) proxycacheblobworker stdout | 2025-09-26 08:32:42,574 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:32:42 GMT)" (scheduled at 2025-09-26 08:32:42.481458+00:00) gunicorn-secscan stderr | 2025-09-26T08:32:42Z gunicorn-secscan stderr | failed with AssertionError teamsyncworker stdout | 2025-09-26 08:32:42,578 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} proxycacheblobworker stdout | 2025-09-26 08:32:42,574 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:32:52.477454+00:00 (in 9.902568 seconds) proxycacheblobworker stdout | 2025-09-26 08:32:42,581 [69] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [False, datetime.datetime(2025, 9, 26, 8, 32, 42, 580477), 'proxycacheblob/%']) securityscanningnotificationworker stdout | 2025-09-26 08:32:42,583 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:32:42,583 [82] [DEBUG] [apscheduler.scheduler] No jobs; waiting until a job is added securityscanningnotificationworker stdout | 2025-09-26 08:32:42,583 [82] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:33:10.584403 securityscanningnotificationworker stdout | 2025-09-26 08:32:42,585 [82] [INFO] [apscheduler.scheduler] Added job "QueueWorker.poll_queue" to job store "default" securityscanningnotificationworker stdout | 2025-09-26 08:32:42,585 [82] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:36:39.586780 securityscanningnotificationworker stdout | 2025-09-26 08:32:42,586 [82] [INFO] [apscheduler.scheduler] Added job "QueueWorker.update_queue_metrics" to job store "default" securityscanningnotificationworker stdout | 2025-09-26 08:32:42,586 [82] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:33:28.587130 securityscanningnotificationworker stdout | 2025-09-26 08:32:42,586 [82] [INFO] [apscheduler.scheduler] Added job "QueueWorker.run_watchdog" to job store "default" securityscanningnotificationworker stdout | 2025-09-26 08:32:42,586 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:32:42,586 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:10.584403+00:00 (in 27.997899 seconds) proxycacheblobworker stdout | 2025-09-26 08:32:42,593 [69] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 32, 42, 580477), True, datetime.datetime(2025, 9, 26, 8, 32, 42, 580477), 0, 'proxycacheblob/%']) proxycacheblobworker stdout | 2025-09-26 08:32:42,596 [69] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) AND NOT ("t1"."queue_name" IN (SELECT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s)))))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 32, 42, 580477), True, datetime.datetime(2025, 9, 26, 8, 32, 42, 580477), 0, 'proxycacheblob/%', False, datetime.datetime(2025, 9, 26, 8, 32, 42, 580477), 'proxycacheblob/%']) proxycacheblobworker stdout | 2025-09-26 08:32:42,671 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:32:42,672 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:37:42 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:32:42,880 [56] [DEBUG] [__main__] Starting export action logs worker exportactionlogsworker stdout | 2025-09-26 08:32:42,882 [56] [DEBUG] [workers.worker] Scheduling worker. exportactionlogsworker stdout | 2025-09-26 08:32:42,883 [56] [INFO] [apscheduler.scheduler] Scheduler started exportactionlogsworker stdout | 2025-09-26 08:32:42,883 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:32:42,883 [56] [DEBUG] [apscheduler.scheduler] No jobs; waiting until a job is added exportactionlogsworker stdout | 2025-09-26 08:32:42,884 [56] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:32:50.885619 exportactionlogsworker stdout | 2025-09-26 08:32:42,885 [56] [INFO] [apscheduler.scheduler] Added job "QueueWorker.poll_queue" to job store "default" exportactionlogsworker stdout | 2025-09-26 08:32:42,885 [56] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:34:09.886563 exportactionlogsworker stdout | 2025-09-26 08:32:42,885 [56] [INFO] [apscheduler.scheduler] Added job "QueueWorker.update_queue_metrics" to job store "default" exportactionlogsworker stdout | 2025-09-26 08:32:42,885 [56] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:32:52.886914 exportactionlogsworker stdout | 2025-09-26 08:32:42,886 [56] [INFO] [apscheduler.scheduler] Added job "QueueWorker.run_watchdog" to job store "default" exportactionlogsworker stdout | 2025-09-26 08:32:42,886 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:32:42,886 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:32:50.885619+00:00 (in 7.999193 seconds) repositorygcworker stdout | 2025-09-26 08:32:43,072 [81] [DEBUG] [__main__] Starting repository GC worker repositorygcworker stdout | 2025-09-26 08:32:43,073 [81] [DEBUG] [workers.worker] Scheduling worker. repositorygcworker stdout | 2025-09-26 08:32:43,074 [81] [INFO] [apscheduler.scheduler] Scheduler started repositorygcworker stdout | 2025-09-26 08:32:43,074 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:32:43,074 [81] [DEBUG] [apscheduler.scheduler] No jobs; waiting until a job is added repositorygcworker stdout | 2025-09-26 08:32:43,074 [81] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:33:19.075668 repositorygcworker stdout | 2025-09-26 08:32:43,075 [81] [INFO] [apscheduler.scheduler] Added job "QueueWorker.poll_queue" to job store "default" repositorygcworker stdout | 2025-09-26 08:32:43,075 [81] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:34:45.076950 repositorygcworker stdout | 2025-09-26 08:32:43,076 [81] [INFO] [apscheduler.scheduler] Added job "QueueWorker.update_queue_metrics" to job store "default" repositorygcworker stdout | 2025-09-26 08:32:43,076 [81] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:33:28.077240 repositorygcworker stdout | 2025-09-26 08:32:43,076 [81] [INFO] [apscheduler.scheduler] Added job "QueueWorker.run_watchdog" to job store "default" repositorygcworker stdout | 2025-09-26 08:32:43,076 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:32:43,076 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:19.075668+00:00 (in 35.999095 seconds) servicekey stdout | 2025-09-26 08:32:43,277 [89] [DEBUG] [workers.worker] Scheduling worker. servicekey stdout | 2025-09-26 08:32:43,278 [89] [INFO] [apscheduler.scheduler] Scheduler started servicekey stdout | 2025-09-26 08:32:43,278 [89] [DEBUG] [apscheduler.scheduler] Looking for jobs to run servicekey stdout | 2025-09-26 08:32:43,279 [89] [DEBUG] [apscheduler.scheduler] No jobs; waiting until a job is added servicekey stdout | 2025-09-26 08:32:43,279 [89] [DEBUG] [workers.worker] First run scheduled for 2025-09-26 08:58:23.280172 servicekey stdout | 2025-09-26 08:32:43,280 [89] [INFO] [apscheduler.scheduler] Added job "ServiceKeyWorker._refresh_service_key" to job store "default" servicekey stdout | 2025-09-26 08:32:43,280 [89] [DEBUG] [apscheduler.scheduler] Looking for jobs to run servicekey stdout | 2025-09-26 08:32:43,280 [89] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:58:23.280172+00:00 (in 1539.999853 seconds) gunicorn-web stderr | /app/lib/python3.12/site-packages/PyPDF3/generic.py:348: SyntaxWarning: invalid escape sequence '\c' gunicorn-web stderr | b_("c") : b_("\c"), gunicorn-web stdout | 2025-09-26 08:32:43,645 [61] [DEBUG] [__config__] Starting web gunicorn with 4 workers and gevent worker class gunicorn-web stderr | Traceback (most recent call last): gunicorn-web stderr | File "src/gevent/_abstract_linkable.py", line 287, in gevent._gevent_c_abstract_linkable.AbstractLinkable._notify_links gunicorn-web stderr | File "src/gevent/_abstract_linkable.py", line 333, in gevent._gevent_c_abstract_linkable.AbstractLinkable._notify_links gunicorn-web stderr | AssertionError: (None, ) gunicorn-web stderr | 2025-09-26T08:32:43Z failed with AssertionError gunicorn-registry stdout | 2025-09-26 08:32:43,829 [59] [DEBUG] [app] Loading default config. gunicorn-registry stdout | 2025-09-26 08:32:43,829 [59] [DEBUG] [util.config.provider.basefileprovider] Applying config file: /quay-registry/conf/stack/config.yaml gunicorn-registry stdout | 2025-09-26 08:32:43,835 [59] [DEBUG] [app] Loaded config gunicorn-registry stdout | 2025-09-26 08:32:43,836 [59] [INFO] [util.ipresolver] Loading AWS IP ranges from disk gunicorn-registry stdout | 2025-09-26 08:32:43,848 [59] [DEBUG] [util.ipresolver] Building AWS IP ranges gunicorn-registry stdout | 2025-09-26 08:32:43,914 [59] [DEBUG] [util.ipresolver] Finished building AWS IP ranges gunicorn-registry stdout | 2025-09-26 08:32:43,915 [59] [DEBUG] [botocore.hooks] Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane gunicorn-registry stdout | 2025-09-26 08:32:43,917 [59] [DEBUG] [botocore.hooks] Changing event name from before-call.apigateway to before-call.api-gateway gunicorn-registry stdout | 2025-09-26 08:32:43,918 [59] [DEBUG] [botocore.hooks] Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict gunicorn-registry stdout | 2025-09-26 08:32:43,919 [59] [DEBUG] [botocore.hooks] Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration gunicorn-registry stdout | 2025-09-26 08:32:43,919 [59] [DEBUG] [botocore.hooks] Changing event name from before-parameter-build.route53 to before-parameter-build.route-53 gunicorn-registry stdout | 2025-09-26 08:32:43,920 [59] [DEBUG] [botocore.hooks] Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search gunicorn-registry stdout | 2025-09-26 08:32:43,921 [59] [DEBUG] [botocore.hooks] Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section gunicorn-registry stdout | 2025-09-26 08:32:43,923 [59] [DEBUG] [botocore.hooks] Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask gunicorn-registry stdout | 2025-09-26 08:32:43,923 [59] [DEBUG] [botocore.hooks] Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section gunicorn-registry stdout | 2025-09-26 08:32:43,923 [59] [DEBUG] [botocore.hooks] Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search gunicorn-registry stdout | 2025-09-26 08:32:43,923 [59] [DEBUG] [botocore.hooks] Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section gunicorn-registry stdout | 2025-09-26 08:32:44,203 [59] [DEBUG] [data.database] Configuring database gunicorn-registry stdout | 2025-09-26 08:32:44,204 [59] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-registry gunicorn-registry stdout | 2025-09-26 08:32:44,205 [59] [INFO] [data.database] Connection pooling enabled for postgresql; stale timeout: None; max connection count: None gunicorn-registry stdout | 2025-09-26 08:32:44,205 [59] [INFO] [data.secscan_model] =============================== gunicorn-registry stdout | 2025-09-26 08:32:44,205 [59] [INFO] [data.secscan_model] Using split secscan model: `[]` gunicorn-registry stdout | 2025-09-26 08:32:44,205 [59] [INFO] [data.secscan_model] =============================== gunicorn-registry stdout | 2025-09-26 08:32:44,205 [59] [DEBUG] [data.logs_model] Configuring log model gunicorn-registry stdout | 2025-09-26 08:32:44,206 [59] [INFO] [data.logs_model] =============================== gunicorn-registry stdout | 2025-09-26 08:32:44,206 [59] [INFO] [data.logs_model] Using logs model `` gunicorn-registry stdout | 2025-09-26 08:32:44,206 [59] [INFO] [data.logs_model] =============================== gunicorn-registry stdout | 2025-09-26 08:32:44,821 [59] [DEBUG] [__config__] Starting registry gunicorn with 8 workers and gevent worker class gunicorn-registry stderr | Traceback (most recent call last): gunicorn-registry stderr | File "src/gevent/_abstract_linkable.py", line 287, in gevent._gevent_c_abstract_linkable.AbstractLinkable._notify_links gunicorn-registry stderr | File "src/gevent/_abstract_linkable.py", line 333, in gevent._gevent_c_abstract_linkable.AbstractLinkable._notify_links gunicorn-registry stderr | AssertionError: (None, ) gunicorn-registry stderr | 2025-09-26T08:32:44Z failed with AssertionError buildlogsarchiver stdout | 2025-09-26 08:32:45,395 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} buildlogsarchiver stdout | 2025-09-26 08:32:47,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:32:47,376 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:32:47 GMT)" (scheduled at 2025-09-26 08:32:47.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:32:47,376 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 32, 47, 376253), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:32:47,377 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:17.375102+00:00 (in 29.997888 seconds) buildlogsarchiver stdout | 2025-09-26 08:32:47,384 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:32:47,384 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:32:47,384 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:33:17 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:32:48,203 [250] [DEBUG] [app] Starting request: urn:request:5556dbda-7c05-4680-9c87-bd3db194ce1a (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:32:48,210 [250] [DEBUG] [urllib3.connectionpool] Starting new HTTP connection (1): localhost:8080 gunicorn-registry stdout | 2025-09-26 08:32:48,232 [251] [DEBUG] [app] Starting request: urn:request:38ddf4be-95f3-4e3d-a3a8-1032f4bc0e39 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:32:48,234 [251] [DEBUG] [app] Ending request: urn:request:38ddf4be-95f3-4e3d-a3a8-1032f4bc0e39 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:38ddf4be-95f3-4e3d-a3a8-1032f4bc0e39', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:32:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.005 162 0.005) gunicorn-registry stdout | 2025-09-26 08:32:48,234 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:32:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:32:48,235 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:32:48,236 [250] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:32:48,237 [250] [DEBUG] [app] Starting request: urn:request:b80002ec-8d23-4bda-aefe-d692589ba6d8 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:32:48,238 [250] [DEBUG] [app] Ending request: urn:request:b80002ec-8d23-4bda-aefe-d692589ba6d8 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:b80002ec-8d23-4bda-aefe-d692589ba6d8', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:32:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.002) gunicorn-web stdout | 2025-09-26 08:32:48,239 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:32:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:32:48,239 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:32:48,242 [250] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."kid", "t1"."service", "t1"."jwk", "t1"."metadata", "t1"."created_date", "t1"."expiration_date", "t1"."rotation_duration", "t1"."approval_id" FROM "servicekey" AS "t1" LEFT OUTER JOIN "servicekeyapproval" AS "t2" ON ("t1"."approval_id" = "t2"."id") WHERE ((((NOT ("t1"."approval_id" IS %s) AND (("t1"."expiration_date" > %s) OR ("t1"."expiration_date" IS %s))) AND ("t1"."service" = %s)) AND (NOT (("t1"."service" = %s) AND ("t1"."expiration_date" <= %s)) OR NOT ((("t1"."service" = %s) AND ("t1"."approval_id" IS %s)) AND ("t1"."created_date" <= %s)))) AND (NOT ("t1"."expiration_date" <= %s) OR ("t1"."expiration_date" IS %s)))', [None, datetime.datetime(2025, 9, 26, 8, 32, 48, 241007), None, 'quay', 'quay', datetime.datetime(2025, 9, 26, 8, 32, 48, 241039), 'quay', None, datetime.datetime(2025, 9, 25, 8, 32, 48, 241089), datetime.datetime(2025, 9, 19, 8, 32, 48, 241106), None]) gunicorn-web stdout | 2025-09-26 08:32:48,251 [250] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:32:48,252 [250] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:32:48,252 [250] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:32:48,257 [250] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:32:48,257 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:32:48,257 [250] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:32:48,258 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:32:48,258 [250] [DEBUG] [app] Ending request: urn:request:5556dbda-7c05-4680-9c87-bd3db194ce1a (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:5556dbda-7c05-4680-9c87-bd3db194ce1a', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:32:48,259 [250] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:32:48,259 [250] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:32:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:32:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.061 118 0.061) gunicorn-web stdout | 2025-09-26 08:32:48,261 [250] [DEBUG] [app] Starting request: urn:request:15e68b72-c4db-421c-bb87-06e6d648798a (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:32:48,262 [251] [DEBUG] [app] Starting request: urn:request:c9d450c8-0a6f-4a7e-bb05-22f54341ca32 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:32:48,263 [251] [DEBUG] [app] Ending request: urn:request:c9d450c8-0a6f-4a7e-bb05-22f54341ca32 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:c9d450c8-0a6f-4a7e-bb05-22f54341ca32', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:32:48,264 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:32:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:32:48,264 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:32:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:32:48,265 [250] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:32:48,270 [247] [DEBUG] [app] Starting request: urn:request:648bb2df-e344-436d-86ca-5a731d7aea73 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:32:48,271 [247] [DEBUG] [app] Ending request: urn:request:648bb2df-e344-436d-86ca-5a731d7aea73 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:648bb2df-e344-436d-86ca-5a731d7aea73', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:32:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.006 159 0.006) gunicorn-web stdout | 2025-09-26 08:32:48,272 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:32:48,272 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:32:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:32:48,273 [250] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:32:48,273 [250] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:32:48,273 [250] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:32:48,277 [250] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:32:48,277 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:32:48,281 [250] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:32:48,282 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:32:48,283 [250] [DEBUG] [app] Ending request: urn:request:15e68b72-c4db-421c-bb87-06e6d648798a (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:15e68b72-c4db-421c-bb87-06e6d648798a', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:32:48,283 [250] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:32:48,283 [250] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:32:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:32:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.023 118 0.023) securityworker stdout | 2025-09-26 08:32:48,596 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} notificationworker stdout | 2025-09-26 08:32:50,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:32:50,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:00.692901+00:00 (in 9.999502 seconds) notificationworker stdout | 2025-09-26 08:32:50,694 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:00 GMT)" (scheduled at 2025-09-26 08:32:50.692901+00:00) notificationworker stdout | 2025-09-26 08:32:50,694 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:32:50,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 32, 50, 694257), True, datetime.datetime(2025, 9, 26, 8, 32, 50, 694257), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:32:50,702 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:32:50,703 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:32:50,703 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:00 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:32:50,878 [250] [DEBUG] [app] Starting request: urn:request:9795dd2d-8ade-4ad0-8b8b-852dd72a1621 (/) {'X-Forwarded-For': '10.131.2.26'} exportactionlogsworker stdout | 2025-09-26 08:32:50,885 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:32:50,886 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:32:50 GMT)" (scheduled at 2025-09-26 08:32:50.885619+00:00) exportactionlogsworker stdout | 2025-09-26 08:32:50,886 [56] [DEBUG] [workers.queueworker] Getting work item from queue. exportactionlogsworker stdout | 2025-09-26 08:32:50,887 [56] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 32, 50, 886439), True, datetime.datetime(2025, 9, 26, 8, 32, 50, 886439), 0, 'exportactionlogs/%', 50, 1, 0]) exportactionlogsworker stdout | 2025-09-26 08:32:50,887 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:32:52.886914+00:00 (in 1.999076 seconds) gunicorn-web stdout | 2025-09-26 08:32:50,891 [250] [DEBUG] [endpoints.api.discovery] Unable to find method for POST in class exportactionlogsworker stdout | 2025-09-26 08:32:50,894 [56] [DEBUG] [workers.queueworker] No more work. exportactionlogsworker stdout | 2025-09-26 08:32:50,894 [56] [DEBUG] [data.database] Disconnecting from database. exportactionlogsworker stdout | 2025-09-26 08:32:50,895 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:33:50 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:32:50,928 [250] [DEBUG] [app] Ending request: urn:request:9795dd2d-8ade-4ad0-8b8b-852dd72a1621 (/) {'endpoint': 'web.index', 'request_id': 'urn:request:9795dd2d-8ade-4ad0-8b8b-852dd72a1621', 'remote_addr': '10.131.2.26', 'http_method': 'GET', 'original_url': 'http://quayregistry-quay-app/', 'path': '/', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:32:50,929 [250] [INFO] [gunicorn.access] 10.131.2.26 - - [26/Sep/2025:08:32:50 +0000] "GET / HTTP/1.0" 200 91952 "-" "python-requests/2.32.2" nginx stdout | 10.131.2.26 (-) - - [26/Sep/2025:08:32:50 +0000] "GET / HTTP/1.1" 200 14099 "-" "python-requests/2.32.2" (0.052 152 0.052) blobuploadcleanupworker stdout | 2025-09-26 08:32:51,906 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} proxycacheblobworker stdout | 2025-09-26 08:32:52,484 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:32:52,484 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:02.477454+00:00 (in 9.992485 seconds) proxycacheblobworker stdout | 2025-09-26 08:32:52,485 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:02 GMT)" (scheduled at 2025-09-26 08:32:52.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:32:52,485 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:32:52,486 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 32, 52, 485335), True, datetime.datetime(2025, 9, 26, 8, 32, 52, 485335), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:32:52,494 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:32:52,494 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:32:52,494 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:02 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:32:52,887 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:32:52,887 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:50.885619+00:00 (in 57.998241 seconds) exportactionlogsworker stdout | 2025-09-26 08:32:52,887 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:33:52 GMT)" (scheduled at 2025-09-26 08:32:52.886914+00:00) exportactionlogsworker stdout | 2025-09-26 08:32:52,887 [56] [DEBUG] [workers.queueworker] Running watchdog. exportactionlogsworker stdout | 2025-09-26 08:32:52,887 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:33:52 GMT)" executed successfully globalpromstats stdout | 2025-09-26 08:32:54,982 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} proxycacheblobworker stdout | 2025-09-26 08:32:55,707 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} notificationworker stdout | 2025-09-26 08:32:56,803 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} repositoryactioncounter stdout | 2025-09-26 08:32:56,902 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} exportactionlogsworker stdout | 2025-09-26 08:32:57,090 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} gcworker stdout | 2025-09-26 08:32:57,160 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:32:57,160 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:32:57 GMT)" (scheduled at 2025-09-26 08:32:57.083344+00:00) gcworker stdout | 2025-09-26 08:32:57,161 [57] [DEBUG] [peewee] ('SELECT DISTINCT "t1"."removed_tag_expiration_s" FROM "user" AS "t1" LIMIT %s', [100]) gcworker stdout | 2025-09-26 08:32:57,161 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:07.085344+00:00 (in 9.923950 seconds) gcworker stdout | 2025-09-26 08:32:57,167 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:32:57,167 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:32:57,167 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:33:27 GMT)" executed successfully manifestsubjectbackfillworker stdout | 2025-09-26 08:32:57,604 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} namespacegcworker stdout | 2025-09-26 08:32:59,791 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:32:59,791 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:32:59 GMT)" (scheduled at 2025-09-26 08:32:59.791127+00:00) namespacegcworker stdout | 2025-09-26 08:32:59,791 [66] [DEBUG] [workers.queueworker] Getting work item from queue. namespacegcworker stdout | 2025-09-26 08:32:59,792 [66] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 32, 59, 791926), True, datetime.datetime(2025, 9, 26, 8, 32, 59, 791926), 0, 'namespacegc/%', 50, 1, 0]) namespacegcworker stdout | 2025-09-26 08:32:59,792 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:08.793810+00:00 (in 9.000907 seconds) namespacegcworker stdout | 2025-09-26 08:32:59,800 [66] [DEBUG] [workers.queueworker] No more work. namespacegcworker stdout | 2025-09-26 08:32:59,800 [66] [DEBUG] [data.database] Disconnecting from database. namespacegcworker stdout | 2025-09-26 08:32:59,800 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:33:59 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:33:00,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:33:00,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:10.692901+00:00 (in 9.999551 seconds) notificationworker stdout | 2025-09-26 08:33:00,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:10 GMT)" (scheduled at 2025-09-26 08:33:00.692901+00:00) notificationworker stdout | 2025-09-26 08:33:00,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:33:00,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 33, 0, 693704), True, datetime.datetime(2025, 9, 26, 8, 33, 0, 693704), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:33:00,702 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:33:00,702 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:33:00,702 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:10 GMT)" executed successfully storagereplication stdout | 2025-09-26 08:33:02,407 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} proxycacheblobworker stdout | 2025-09-26 08:33:02,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:33:02,478 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:12.477454+00:00 (in 9.999356 seconds) proxycacheblobworker stdout | 2025-09-26 08:33:02,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:12 GMT)" (scheduled at 2025-09-26 08:33:02.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:33:02,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:33:02,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 33, 2, 478430), True, datetime.datetime(2025, 9, 26, 8, 33, 2, 478430), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:33:02,485 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:33:02,485 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:33:02,485 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:12 GMT)" executed successfully namespacegcworker stdout | 2025-09-26 08:33:02,804 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-web stdout | 2025-09-26 08:33:03,200 [247] [DEBUG] [app] Starting request: urn:request:5a326f49-8e5b-45c5-a1e3-4d3c848a7baf (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:33:03,206 [247] [DEBUG] [urllib3.connectionpool] Starting new HTTP connection (1): localhost:8080 gunicorn-registry stdout | 2025-09-26 08:33:03,229 [256] [DEBUG] [app] Starting request: urn:request:42784ea8-4e0d-4473-af0c-443a20d6fc43 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:33:03,231 [256] [DEBUG] [app] Ending request: urn:request:42784ea8-4e0d-4473-af0c-443a20d6fc43 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:42784ea8-4e0d-4473-af0c-443a20d6fc43', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:33:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.006 162 0.006) gunicorn-registry stdout | 2025-09-26 08:33:03,232 [256] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:33:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:33:03,232 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:33:03,234 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:33:03,235 [247] [DEBUG] [app] Starting request: urn:request:6f16a94a-c009-467c-badd-7130c3add688 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:33:03,235 [247] [DEBUG] [app] Ending request: urn:request:6f16a94a-c009-467c-badd-7130c3add688 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:6f16a94a-c009-467c-badd-7130c3add688', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:33:03,236 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:33:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:33:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:33:03,236 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:33:03,238 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."kid", "t1"."service", "t1"."jwk", "t1"."metadata", "t1"."created_date", "t1"."expiration_date", "t1"."rotation_duration", "t1"."approval_id" FROM "servicekey" AS "t1" LEFT OUTER JOIN "servicekeyapproval" AS "t2" ON ("t1"."approval_id" = "t2"."id") WHERE ((((NOT ("t1"."approval_id" IS %s) AND (("t1"."expiration_date" > %s) OR ("t1"."expiration_date" IS %s))) AND ("t1"."service" = %s)) AND (NOT (("t1"."service" = %s) AND ("t1"."expiration_date" <= %s)) OR NOT ((("t1"."service" = %s) AND ("t1"."approval_id" IS %s)) AND ("t1"."created_date" <= %s)))) AND (NOT ("t1"."expiration_date" <= %s) OR ("t1"."expiration_date" IS %s)))', [None, datetime.datetime(2025, 9, 26, 8, 33, 3, 237623), None, 'quay', 'quay', datetime.datetime(2025, 9, 26, 8, 33, 3, 237656), 'quay', None, datetime.datetime(2025, 9, 25, 8, 33, 3, 237684), datetime.datetime(2025, 9, 19, 8, 33, 3, 237700), None]) gunicorn-web stdout | 2025-09-26 08:33:03,246 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:33:03,247 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:33:03,247 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:33:03,252 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:33:03,252 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:33:03,252 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:33:03,253 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:33:03,253 [247] [DEBUG] [app] Ending request: urn:request:5a326f49-8e5b-45c5-a1e3-4d3c848a7baf (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:5a326f49-8e5b-45c5-a1e3-4d3c848a7baf', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:33:03,254 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:33:03,254 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:33:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:33:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.056 118 0.056) gunicorn-web stdout | 2025-09-26 08:33:03,261 [247] [DEBUG] [app] Starting request: urn:request:f81b610a-149c-4896-b658-c0fa19fa5317 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:33:03,263 [256] [DEBUG] [app] Starting request: urn:request:0cb30e4e-c2a9-4e55-ac1a-6e680bb481d3 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:33:03,264 [256] [DEBUG] [app] Ending request: urn:request:0cb30e4e-c2a9-4e55-ac1a-6e680bb481d3 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:0cb30e4e-c2a9-4e55-ac1a-6e680bb481d3', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:33:03,264 [256] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:33:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:33:03,264 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:33:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:33:03,266 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:33:03,267 [247] [DEBUG] [app] Starting request: urn:request:a7a897d7-5fcb-4fab-a60d-de7b15d30f1f (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:33:03,267 [247] [DEBUG] [app] Ending request: urn:request:a7a897d7-5fcb-4fab-a60d-de7b15d30f1f (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:a7a897d7-5fcb-4fab-a60d-de7b15d30f1f', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:33:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:33:03,268 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:33:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:33:03,268 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:33:03,268 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:33:03,268 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:33:03,268 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:33:03,272 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:33:03,272 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:33:03,276 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:33:03,277 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:33:03,278 [247] [DEBUG] [app] Ending request: urn:request:f81b610a-149c-4896-b658-c0fa19fa5317 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:f81b610a-149c-4896-b658-c0fa19fa5317', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:33:03,278 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:33:03,278 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:33:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:33:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.017 118 0.017) autopruneworker stdout | 2025-09-26 08:33:04,198 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} expiredappspecifictokenworker stdout | 2025-09-26 08:33:04,281 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} manifestbackfillworker stdout | 2025-09-26 08:33:04,498 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} builder stdout | 2025-09-26 08:33:04,882 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} logrotateworker stdout | 2025-09-26 08:33:06,199 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gcworker stdout | 2025-09-26 08:33:07,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:33:07,085 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:27.083344+00:00 (in 19.997540 seconds) gcworker stdout | 2025-09-26 08:33:07,085 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:33:37 GMT)" (scheduled at 2025-09-26 08:33:07.085344+00:00) gcworker stdout | 2025-09-26 08:33:07,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gcworker stdout | 2025-09-26 08:33:07,092 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875287092, None, 1, 0]) gcworker stdout | 2025-09-26 08:33:07,094 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:33:07,095 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:33:37 GMT)" executed successfully securityworker stdout | 2025-09-26 08:33:07,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:33:07,683 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:11.684816+00:00 (in 4.000841 seconds) securityworker stdout | 2025-09-26 08:33:07,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:33:37 GMT)" (scheduled at 2025-09-26 08:33:07.683505+00:00) securityworker stdout | 2025-09-26 08:33:07,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:33:07,684 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:33:07,688 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:33:07,690 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:33:07,697 [86] [DEBUG] [peewee] ('SELECT Min("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:33:07,697 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:33:07,697 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:33:37 GMT)" executed successfully namespacegcworker stdout | 2025-09-26 08:33:08,794 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:33:08,794 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:59.791127+00:00 (in 50.996653 seconds) namespacegcworker stdout | 2025-09-26 08:33:08,794 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:08 GMT)" (scheduled at 2025-09-26 08:33:08.793810+00:00) namespacegcworker stdout | 2025-09-26 08:33:08,795 [66] [DEBUG] [workers.queueworker] Running watchdog. namespacegcworker stdout | 2025-09-26 08:33:08,795 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:08 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:33:09,527 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:33:09,530 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:33:09,577 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:33:09,579 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:33:09,583 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gcworker stdout | 2025-09-26 08:33:09,706 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} securityscanningnotificationworker stdout | 2025-09-26 08:33:09,881 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} queuecleanupworker stdout | 2025-09-26 08:33:10,092 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} gunicorn-secscan stdout | 2025-09-26 08:33:10,239 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:33:10,242 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} gunicorn-secscan stdout | 2025-09-26 08:33:10,244 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} securityscanningnotificationworker stdout | 2025-09-26 08:33:10,584 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:33:10,585 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:33:10 GMT)" (scheduled at 2025-09-26 08:33:10.584403+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:33:10,585 [82] [DEBUG] [workers.queueworker] Getting work item from queue. securityscanningnotificationworker stdout | 2025-09-26 08:33:10,586 [82] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 33, 10, 585248), True, datetime.datetime(2025, 9, 26, 8, 33, 10, 585248), 0, 'secscanv4/%', 50, 1, 0]) securityscanningnotificationworker stdout | 2025-09-26 08:33:10,586 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:28.587130+00:00 (in 18.000658 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:33:10,593 [82] [DEBUG] [workers.queueworker] No more work. securityscanningnotificationworker stdout | 2025-09-26 08:33:10,593 [82] [DEBUG] [data.database] Disconnecting from database. securityscanningnotificationworker stdout | 2025-09-26 08:33:10,593 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:10 GMT)" executed successfully autopruneworker stdout | 2025-09-26 08:33:10,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:33:10,598 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:40.598100+00:00 (in 29.999486 seconds) autopruneworker stdout | 2025-09-26 08:33:10,598 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:33:40 GMT)" (scheduled at 2025-09-26 08:33:10.598100+00:00) autopruneworker stdout | 2025-09-26 08:33:10,603 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758871990602, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:33:10,606 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:33:10,606 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:33:10,606 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:33:40 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:33:10,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:33:10,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:20.692901+00:00 (in 9.999559 seconds) notificationworker stdout | 2025-09-26 08:33:10,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:20 GMT)" (scheduled at 2025-09-26 08:33:10.692901+00:00) notificationworker stdout | 2025-09-26 08:33:10,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:33:10,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 33, 10, 693594), True, datetime.datetime(2025, 9, 26, 8, 33, 10, 693594), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:33:10,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:33:10,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:33:10,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:20 GMT)" executed successfully chunkcleanupworker stdout | 2025-09-26 08:33:10,909 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} securityworker stdout | 2025-09-26 08:33:11,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:33:11,685 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:37.683505+00:00 (in 25.998177 seconds) securityworker stdout | 2025-09-26 08:33:11,685 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:33:41 GMT)" (scheduled at 2025-09-26 08:33:11.684816+00:00) securityworker stdout | 2025-09-26 08:33:11,685 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:33:11,685 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:33:11,687 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:33:11,690 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:33:11,698 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:33:11,698 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:33:11,698 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:33:11,698 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:33:11,699 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 2]) securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:33:11,701 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:33:11,701 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:33:11,701 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:33:11,701 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:33:11,701 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:33:11,701 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:33:11,701 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:33:11,701 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:33:11,701 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:33:11,701 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:33:11,701 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:33:11,702 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 28, 11, 689909), 1, 2]) securityworker stdout | 2025-09-26 08:33:11,703 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:33:11,703 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:33:11,703 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:33:11,703 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:33:11,703 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:33:11,703 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:33:11,703 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:33:11,703 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:33:11,703 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:33:11,703 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:33:11,703 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:33:11,704 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 28, 11, 689909), 1, 2]) securityworker stdout | 2025-09-26 08:33:11,705 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:33:11,705 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:33:11,705 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:33:11,705 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:33:11,705 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:33:11,705 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:33:11,705 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:33:11,705 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:33:11,705 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:33:41 GMT)" executed successfully securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:33:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker repositorygcworker stdout | 2025-09-26 08:33:11,895 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} proxycacheblobworker stdout | 2025-09-26 08:33:12,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:33:12,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:22.477454+00:00 (in 9.999524 seconds) proxycacheblobworker stdout | 2025-09-26 08:33:12,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:22 GMT)" (scheduled at 2025-09-26 08:33:12.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:33:12,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:33:12,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 33, 12, 478235), True, datetime.datetime(2025, 9, 26, 8, 33, 12, 478235), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:33:12,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:33:12,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:33:12,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:22 GMT)" executed successfully servicekey stdout | 2025-09-26 08:33:12,509 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:33:12,593 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} gunicorn-registry stdout | 2025-09-26 08:33:13,980 [59] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '59'} gunicorn-registry stdout | 2025-09-26 08:33:13,989 [257] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '257'} gunicorn-registry stdout | 2025-09-26 08:33:13,990 [253] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '253'} gunicorn-registry stdout | 2025-09-26 08:33:13,995 [255] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '255'} gunicorn-registry stdout | 2025-09-26 08:33:14,001 [256] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '256'} gunicorn-registry stdout | 2025-09-26 08:33:14,005 [258] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '258'} gunicorn-registry stdout | 2025-09-26 08:33:14,008 [251] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '251'} gunicorn-registry stdout | 2025-09-26 08:33:14,011 [252] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '252'} gunicorn-registry stdout | 2025-09-26 08:33:14,015 [254] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '254'} buildlogsarchiver stdout | 2025-09-26 08:33:15,414 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} buildlogsarchiver stdout | 2025-09-26 08:33:17,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:33:17,375 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:47.375102+00:00 (in 29.999528 seconds) buildlogsarchiver stdout | 2025-09-26 08:33:17,375 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:33:47 GMT)" (scheduled at 2025-09-26 08:33:17.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:33:17,376 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 33, 17, 375861), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:33:17,383 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:33:17,383 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:33:17,383 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:33:47 GMT)" executed successfully manifestsubjectbackfillworker stdout | 2025-09-26 08:33:17,989 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:33:17,989 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:33.984400+00:00 (in 15.994428 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:33:17,990 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:17 GMT)" (scheduled at 2025-09-26 08:33:17.985743+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:33:17,990 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."artifact_type_backfilled" = %s) OR ("t1"."artifact_type_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:33:17,996 [64] [DEBUG] [__main__] Manifest artifact_type backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:33:17,996 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:33:17,996 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:17 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:33:18,202 [249] [DEBUG] [app] Starting request: urn:request:88fa645b-d807-4a82-b7ff-874c665b5072 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:33:18,208 [249] [DEBUG] [urllib3.connectionpool] Starting new HTTP connection (1): localhost:8080 gunicorn-registry stdout | 2025-09-26 08:33:18,212 [258] [DEBUG] [app] Starting request: urn:request:cd15369a-cc90-43b5-8690-c0f18ef8e997 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:33:18,213 [258] [DEBUG] [app] Ending request: urn:request:cd15369a-cc90-43b5-8690-c0f18ef8e997 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:cd15369a-cc90-43b5-8690-c0f18ef8e997', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:33:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.005 162 0.005) gunicorn-registry stdout | 2025-09-26 08:33:18,214 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:33:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:33:18,214 [249] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:33:18,216 [249] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:33:18,218 [249] [DEBUG] [app] Starting request: urn:request:34383cfa-aacb-474b-864e-3091940332fc (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:33:18,219 [249] [DEBUG] [app] Ending request: urn:request:34383cfa-aacb-474b-864e-3091940332fc (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:34383cfa-aacb-474b-864e-3091940332fc', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:33:18 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.003 159 0.003) gunicorn-web stdout | 2025-09-26 08:33:18,220 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:33:18 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:33:18,220 [249] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:33:18,223 [249] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."kid", "t1"."service", "t1"."jwk", "t1"."metadata", "t1"."created_date", "t1"."expiration_date", "t1"."rotation_duration", "t1"."approval_id" FROM "servicekey" AS "t1" LEFT OUTER JOIN "servicekeyapproval" AS "t2" ON ("t1"."approval_id" = "t2"."id") WHERE ((((NOT ("t1"."approval_id" IS %s) AND (("t1"."expiration_date" > %s) OR ("t1"."expiration_date" IS %s))) AND ("t1"."service" = %s)) AND (NOT (("t1"."service" = %s) AND ("t1"."expiration_date" <= %s)) OR NOT ((("t1"."service" = %s) AND ("t1"."approval_id" IS %s)) AND ("t1"."created_date" <= %s)))) AND (NOT ("t1"."expiration_date" <= %s) OR ("t1"."expiration_date" IS %s)))', [None, datetime.datetime(2025, 9, 26, 8, 33, 18, 222147), None, 'quay', 'quay', datetime.datetime(2025, 9, 26, 8, 33, 18, 222181), 'quay', None, datetime.datetime(2025, 9, 25, 8, 33, 18, 222210), datetime.datetime(2025, 9, 19, 8, 33, 18, 222226), None]) gunicorn-web stdout | 2025-09-26 08:33:18,231 [249] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:33:18,232 [249] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:33:18,232 [249] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:33:18,236 [249] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:33:18,236 [249] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:33:18,237 [249] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:33:18,237 [249] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:33:18,238 [249] [DEBUG] [app] Ending request: urn:request:88fa645b-d807-4a82-b7ff-874c665b5072 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:88fa645b-d807-4a82-b7ff-874c665b5072', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:33:18,238 [249] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:33:18,238 [249] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:33:18 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:33:18 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.040 118 0.040) gunicorn-web stdout | 2025-09-26 08:33:18,261 [250] [DEBUG] [app] Starting request: urn:request:c25e3cc7-314e-4263-9237-618ea45bca2b (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:33:18,262 [250] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:33:18,264 [258] [DEBUG] [app] Starting request: urn:request:9441113b-98f6-4f7d-90da-ebc8a2b821d9 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:33:18,264 [258] [DEBUG] [app] Ending request: urn:request:9441113b-98f6-4f7d-90da-ebc8a2b821d9 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:9441113b-98f6-4f7d-90da-ebc8a2b821d9', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:33:18,265 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:33:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:33:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:33:18,265 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:33:18,266 [250] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:33:18,267 [250] [DEBUG] [app] Starting request: urn:request:17da4124-5ee9-4e74-a239-9bb7383b5373 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:33:18,268 [250] [DEBUG] [app] Ending request: urn:request:17da4124-5ee9-4e74-a239-9bb7383b5373 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:17da4124-5ee9-4e74-a239-9bb7383b5373', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:33:18,268 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:33:18 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:33:18 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.001) gunicorn-web stdout | 2025-09-26 08:33:18,269 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:33:18,269 [250] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:33:18,269 [250] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:33:18,269 [250] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:33:18,273 [250] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:33:18,274 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:33:18,277 [250] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:33:18,278 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:33:18,279 [250] [DEBUG] [app] Ending request: urn:request:c25e3cc7-314e-4263-9237-618ea45bca2b (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:c25e3cc7-314e-4263-9237-618ea45bca2b', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:33:18,279 [250] [DEBUG] [data.database] Disconnecting from database. nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:33:18 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.019 118 0.019) gunicorn-web stdout | 2025-09-26 08:33:18,279 [250] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:33:18 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" securityworker stdout | 2025-09-26 08:33:18,613 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} repositorygcworker stdout | 2025-09-26 08:33:19,075 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:33:19,076 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:33:19 GMT)" (scheduled at 2025-09-26 08:33:19.075668+00:00) repositorygcworker stdout | 2025-09-26 08:33:19,076 [81] [DEBUG] [workers.queueworker] Getting work item from queue. repositorygcworker stdout | 2025-09-26 08:33:19,077 [81] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 33, 19, 76741), True, datetime.datetime(2025, 9, 26, 8, 33, 19, 76741), 0, 'repositorygc/%', 50, 1, 0]) repositorygcworker stdout | 2025-09-26 08:33:19,078 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:28.077240+00:00 (in 8.998875 seconds) repositorygcworker stdout | 2025-09-26 08:33:19,085 [81] [DEBUG] [workers.queueworker] No more work. repositorygcworker stdout | 2025-09-26 08:33:19,085 [81] [DEBUG] [data.database] Disconnecting from database. repositorygcworker stdout | 2025-09-26 08:33:19,085 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:19 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:33:20,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:33:20,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:30.692901+00:00 (in 9.999522 seconds) notificationworker stdout | 2025-09-26 08:33:20,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:30 GMT)" (scheduled at 2025-09-26 08:33:20.692901+00:00) notificationworker stdout | 2025-09-26 08:33:20,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:33:20,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 33, 20, 693736), True, datetime.datetime(2025, 9, 26, 8, 33, 20, 693736), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:33:20,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:33:20,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:33:20,702 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:30 GMT)" executed successfully blobuploadcleanupworker stdout | 2025-09-26 08:33:21,921 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} proxycacheblobworker stdout | 2025-09-26 08:33:22,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:33:22,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:26.483749+00:00 (in 4.005856 seconds) proxycacheblobworker stdout | 2025-09-26 08:33:22,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:32 GMT)" (scheduled at 2025-09-26 08:33:22.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:33:22,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:33:22,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 33, 22, 478253), True, datetime.datetime(2025, 9, 26, 8, 33, 22, 478253), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:33:22,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:33:22,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:33:22,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:32 GMT)" executed successfully globalpromstats stdout | 2025-09-26 08:33:24,998 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} proxycacheblobworker stdout | 2025-09-26 08:33:25,723 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} proxycacheblobworker stdout | 2025-09-26 08:33:26,484 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:33:26,484 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:32.477454+00:00 (in 5.993087 seconds) proxycacheblobworker stdout | 2025-09-26 08:33:26,484 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:26 GMT)" (scheduled at 2025-09-26 08:33:26.483749+00:00) proxycacheblobworker stdout | 2025-09-26 08:33:26,484 [69] [DEBUG] [workers.queueworker] Running watchdog. proxycacheblobworker stdout | 2025-09-26 08:33:26,484 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:26 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:33:26,819 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} repositoryactioncounter stdout | 2025-09-26 08:33:26,919 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} gcworker stdout | 2025-09-26 08:33:27,083 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:33:27,084 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:37.085344+00:00 (in 10.001584 seconds) gcworker stdout | 2025-09-26 08:33:27,084 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:33:57 GMT)" (scheduled at 2025-09-26 08:33:27.083344+00:00) gcworker stdout | 2025-09-26 08:33:27,084 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:33:27,084 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:33:57 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:33:27,105 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} manifestsubjectbackfillworker stdout | 2025-09-26 08:33:27,620 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} repositorygcworker stdout | 2025-09-26 08:33:28,077 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:33:28,078 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:19.075668+00:00 (in 50.997474 seconds) repositorygcworker stdout | 2025-09-26 08:33:28,078 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:28 GMT)" (scheduled at 2025-09-26 08:33:28.077240+00:00) repositorygcworker stdout | 2025-09-26 08:33:28,078 [81] [DEBUG] [workers.queueworker] Running watchdog. repositorygcworker stdout | 2025-09-26 08:33:28,078 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:28 GMT)" executed successfully securityscanningnotificationworker stdout | 2025-09-26 08:33:28,587 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:33:28,587 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:10.584403+00:00 (in 41.996790 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:33:28,587 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:28 GMT)" (scheduled at 2025-09-26 08:33:28.587130+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:33:28,587 [82] [DEBUG] [workers.queueworker] Running watchdog. securityscanningnotificationworker stdout | 2025-09-26 08:33:28,587 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:28 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:33:30,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:33:30,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:37.771811+00:00 (in 7.078442 seconds) notificationworker stdout | 2025-09-26 08:33:30,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:40 GMT)" (scheduled at 2025-09-26 08:33:30.692901+00:00) notificationworker stdout | 2025-09-26 08:33:30,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:33:30,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 33, 30, 693690), True, datetime.datetime(2025, 9, 26, 8, 33, 30, 693690), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:33:30,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:33:30,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:33:30,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:40 GMT)" executed successfully storagereplication stdout | 2025-09-26 08:33:32,425 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} proxycacheblobworker stdout | 2025-09-26 08:33:32,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:33:32,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:42.477454+00:00 (in 9.999549 seconds) proxycacheblobworker stdout | 2025-09-26 08:33:32,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:42 GMT)" (scheduled at 2025-09-26 08:33:32.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:33:32,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:33:32,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 33, 32, 478316), True, datetime.datetime(2025, 9, 26, 8, 33, 32, 478316), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:33:32,485 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:33:32,485 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:33:32,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:42 GMT)" executed successfully namespacegcworker stdout | 2025-09-26 08:33:32,819 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-web stdout | 2025-09-26 08:33:33,199 [247] [DEBUG] [app] Starting request: urn:request:9342b48d-a453-48c6-9649-c8e490c54624 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:33:33,201 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:33:33,203 [258] [DEBUG] [app] Starting request: urn:request:570d0793-589d-4682-bd7a-6ff36d0872e7 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:33:33,203 [258] [DEBUG] [app] Ending request: urn:request:570d0793-589d-4682-bd7a-6ff36d0872e7 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:570d0793-589d-4682-bd7a-6ff36d0872e7', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:33:33,204 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:33:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:33:33,204 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:33:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:33:33,205 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:33:33,206 [249] [DEBUG] [app] Starting request: urn:request:1bb32bcf-fb53-4de7-8962-693ee4cfa604 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:33:33,207 [249] [DEBUG] [app] Ending request: urn:request:1bb32bcf-fb53-4de7-8962-693ee4cfa604 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:1bb32bcf-fb53-4de7-8962-693ee4cfa604', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:33:33,207 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:33:33 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:33:33,207 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:33:33 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:33:33,207 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:33:33,208 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:33:33,208 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:33:33,212 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:33:33,212 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:33:33,216 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:33:33,217 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:33:33,218 [247] [DEBUG] [app] Ending request: urn:request:9342b48d-a453-48c6-9649-c8e490c54624 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:9342b48d-a453-48c6-9649-c8e490c54624', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:33:33,218 [247] [DEBUG] [data.database] Disconnecting from database. nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:33:33 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.019 118 0.019) gunicorn-web stdout | 2025-09-26 08:33:33,219 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:33:33 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" gunicorn-web stdout | 2025-09-26 08:33:33,261 [247] [DEBUG] [app] Starting request: urn:request:083c5ffd-2d81-49fd-870d-98eded4b5888 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:33:33,262 [258] [DEBUG] [app] Starting request: urn:request:4f6b3a4a-4ba3-4c54-bbbe-0c4110ca6ea8 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:33:33,262 [258] [DEBUG] [app] Ending request: urn:request:4f6b3a4a-4ba3-4c54-bbbe-0c4110ca6ea8 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:4f6b3a4a-4ba3-4c54-bbbe-0c4110ca6ea8', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:33:33,263 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:33:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:33:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:33:33,263 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:33:33,264 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:33:33,265 [247] [DEBUG] [app] Starting request: urn:request:36db1c0b-aa5b-4467-8a38-1e83bd922468 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:33:33,265 [247] [DEBUG] [app] Ending request: urn:request:36db1c0b-aa5b-4467-8a38-1e83bd922468 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:36db1c0b-aa5b-4467-8a38-1e83bd922468', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:33:33,266 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:33:33 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:33:33,266 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:33:33,267 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:33:33,267 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:33:33,267 [247] [INFO] [data.database] Connection pooling disabled for postgresql nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:33:33 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.002) gunicorn-web stdout | 2025-09-26 08:33:33,270 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:33:33,270 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:33:33,275 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:33:33,276 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:33:33,277 [247] [DEBUG] [app] Ending request: urn:request:083c5ffd-2d81-49fd-870d-98eded4b5888 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:083c5ffd-2d81-49fd-870d-98eded4b5888', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:33:33,277 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:33:33,277 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:33:33 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:33:33 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.017 118 0.017) manifestsubjectbackfillworker stdout | 2025-09-26 08:33:33,984 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:33:33,984 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:17.985743+00:00 (in 44.000869 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:33:33,985 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:33 GMT)" (scheduled at 2025-09-26 08:33:33.984400+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:33:33,985 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."subject_backfilled" = %s) OR ("t1"."subject_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:33:33,991 [64] [DEBUG] [__main__] Manifest subject backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:33:33,991 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:33:33,991 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:33 GMT)" executed successfully autopruneworker stdout | 2025-09-26 08:33:34,215 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} expiredappspecifictokenworker stdout | 2025-09-26 08:33:34,297 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} manifestbackfillworker stdout | 2025-09-26 08:33:34,513 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} builder stdout | 2025-09-26 08:33:34,898 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} logrotateworker stdout | 2025-09-26 08:33:36,215 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gcworker stdout | 2025-09-26 08:33:37,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:33:37,086 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:57.083344+00:00 (in 19.997142 seconds) gcworker stdout | 2025-09-26 08:33:37,086 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:07 GMT)" (scheduled at 2025-09-26 08:33:37.085344+00:00) gcworker stdout | 2025-09-26 08:33:37,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gcworker stdout | 2025-09-26 08:33:37,092 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875317092, None, 1, 0]) gcworker stdout | 2025-09-26 08:33:37,094 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:33:37,094 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:07 GMT)" executed successfully securityworker stdout | 2025-09-26 08:33:37,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:33:37,684 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:41.684816+00:00 (in 4.000635 seconds) securityworker stdout | 2025-09-26 08:33:37,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:07 GMT)" (scheduled at 2025-09-26 08:33:37.683505+00:00) securityworker stdout | 2025-09-26 08:33:37,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:33:37,684 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:33:37,689 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:33:37,690 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:33:37,696 [86] [DEBUG] [peewee] ('SELECT Min("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:33:37,696 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:33:37,696 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:07 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:33:37,772 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:33:37,772 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:40.692901+00:00 (in 2.920648 seconds) notificationworker stdout | 2025-09-26 08:33:37,772 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:37 GMT)" (scheduled at 2025-09-26 08:33:37.771811+00:00) notificationworker stdout | 2025-09-26 08:33:37,772 [68] [DEBUG] [workers.queueworker] Running watchdog. notificationworker stdout | 2025-09-26 08:33:37,772 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:37 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:33:39,547 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:33:39,550 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:33:39,598 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:33:39,601 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:33:39,607 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gcworker stdout | 2025-09-26 08:33:39,719 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} securityscanningnotificationworker stdout | 2025-09-26 08:33:39,897 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} queuecleanupworker stdout | 2025-09-26 08:33:40,108 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} gunicorn-secscan stdout | 2025-09-26 08:33:40,257 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:33:40,262 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} gunicorn-secscan stdout | 2025-09-26 08:33:40,265 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} autopruneworker stdout | 2025-09-26 08:33:40,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:33:40,598 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:10.598100+00:00 (in 29.999579 seconds) autopruneworker stdout | 2025-09-26 08:33:40,598 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:10 GMT)" (scheduled at 2025-09-26 08:33:40.598100+00:00) autopruneworker stdout | 2025-09-26 08:33:40,603 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758872020602, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:33:40,606 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:33:40,606 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:33:40,606 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:10 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:33:40,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:33:40,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:50.692901+00:00 (in 9.999583 seconds) notificationworker stdout | 2025-09-26 08:33:40,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:50 GMT)" (scheduled at 2025-09-26 08:33:40.692901+00:00) notificationworker stdout | 2025-09-26 08:33:40,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:33:40,695 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 33, 40, 693631), True, datetime.datetime(2025, 9, 26, 8, 33, 40, 693631), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:33:40,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:33:40,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:33:40,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:50 GMT)" executed successfully chunkcleanupworker stdout | 2025-09-26 08:33:40,925 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} securityworker stdout | 2025-09-26 08:33:41,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:33:41,685 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:07.683505+00:00 (in 25.998243 seconds) securityworker stdout | 2025-09-26 08:33:41,685 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:11 GMT)" (scheduled at 2025-09-26 08:33:41.684816+00:00) securityworker stdout | 2025-09-26 08:33:41,685 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:33:41,685 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:33:41,688 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:33:41,692 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:33:41,699 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:33:41,699 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:33:41,699 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:33:41,699 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:33:41,700 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 2]) securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:33:41,702 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:33:41,702 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:33:41,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:33:41,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:33:41,702 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:33:41,702 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:33:41,702 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:33:41,702 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:33:41,702 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:33:41,703 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:33:41,703 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:33:41,704 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 28, 41, 691893), 1, 2]) securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:33:41,704 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:33:41,705 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:33:41,705 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:33:41,705 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:33:41,705 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:33:41,705 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:33:41,705 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:33:41,705 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:33:41,705 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:33:41,705 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:33:41,705 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:33:41,706 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 28, 41, 691893), 1, 2]) securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:33:41,708 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:33:41,708 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:33:41,708 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:33:41,708 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:33:41,708 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:33:41,708 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:33:41,708 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:33:41,708 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:33:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:33:41,708 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:11 GMT)" executed successfully repositorygcworker stdout | 2025-09-26 08:33:41,911 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} proxycacheblobworker stdout | 2025-09-26 08:33:42,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:33:42,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:52.477454+00:00 (in 9.999503 seconds) proxycacheblobworker stdout | 2025-09-26 08:33:42,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:52 GMT)" (scheduled at 2025-09-26 08:33:42.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:33:42,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:33:42,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 33, 42, 478678), True, datetime.datetime(2025, 9, 26, 8, 33, 42, 478678), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:33:42,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:33:42,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:33:42,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:33:52 GMT)" executed successfully servicekey stdout | 2025-09-26 08:33:42,525 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:33:42,609 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} gunicorn-registry stdout | 2025-09-26 08:33:44,004 [59] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '59'} gunicorn-registry stdout | 2025-09-26 08:33:44,010 [257] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '257'} gunicorn-registry stdout | 2025-09-26 08:33:44,017 [253] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '253'} gunicorn-registry stdout | 2025-09-26 08:33:44,024 [256] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '256'} gunicorn-registry stdout | 2025-09-26 08:33:44,028 [255] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '255'} gunicorn-registry stdout | 2025-09-26 08:33:44,032 [258] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '258'} gunicorn-registry stdout | 2025-09-26 08:33:44,035 [251] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '251'} gunicorn-registry stdout | 2025-09-26 08:33:44,039 [252] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '252'} gunicorn-registry stdout | 2025-09-26 08:33:44,071 [254] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '254'} buildlogsarchiver stdout | 2025-09-26 08:33:45,432 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} buildlogsarchiver stdout | 2025-09-26 08:33:47,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:33:47,375 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:17.375102+00:00 (in 29.999552 seconds) buildlogsarchiver stdout | 2025-09-26 08:33:47,375 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:17 GMT)" (scheduled at 2025-09-26 08:33:47.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:33:47,376 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 33, 47, 375868), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:33:47,384 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:33:47,384 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:33:47,384 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:17 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:33:48,199 [247] [DEBUG] [app] Starting request: urn:request:ae741b71-bca9-49a4-89d0-c83de243be82 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:33:48,200 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:33:48,202 [256] [DEBUG] [app] Starting request: urn:request:1beaa43c-32ef-4dd4-b7db-b89fddc0e642 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:33:48,202 [256] [DEBUG] [app] Ending request: urn:request:1beaa43c-32ef-4dd4-b7db-b89fddc0e642 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:1beaa43c-32ef-4dd4-b7db-b89fddc0e642', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:33:48,202 [256] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:33:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:33:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:33:48,202 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:33:48,210 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:33:48,211 [247] [DEBUG] [app] Starting request: urn:request:efd5f441-ed25-4fc8-bd68-cfd32ac4cdec (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:33:48,211 [247] [DEBUG] [app] Ending request: urn:request:efd5f441-ed25-4fc8-bd68-cfd32ac4cdec (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:efd5f441-ed25-4fc8-bd68-cfd32ac4cdec', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:33:48,211 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:33:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:33:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:33:48,212 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:33:48,212 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:33:48,212 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:33:48,212 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:33:48,217 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:33:48,217 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:33:48,221 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:33:48,222 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:33:48,223 [247] [DEBUG] [app] Ending request: urn:request:ae741b71-bca9-49a4-89d0-c83de243be82 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:ae741b71-bca9-49a4-89d0-c83de243be82', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:33:48,223 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:33:48,223 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:33:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:33:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.025 118 0.025) gunicorn-web stdout | 2025-09-26 08:33:48,261 [247] [DEBUG] [app] Starting request: urn:request:fb3f5237-f3b3-4515-88c8-462b72eca1f2 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:33:48,262 [251] [DEBUG] [app] Starting request: urn:request:5bfdee50-288d-478b-b38c-3774cec26f52 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:33:48,263 [251] [DEBUG] [app] Ending request: urn:request:5bfdee50-288d-478b-b38c-3774cec26f52 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:5bfdee50-288d-478b-b38c-3774cec26f52', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:33:48,264 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:33:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:33:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:33:48,264 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:33:48,264 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:33:48,269 [248] [DEBUG] [app] Starting request: urn:request:03a37d3b-7103-46fb-b2e9-0e6e82863f9b (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:33:48,270 [248] [DEBUG] [app] Ending request: urn:request:03a37d3b-7103-46fb-b2e9-0e6e82863f9b (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:03a37d3b-7103-46fb-b2e9-0e6e82863f9b', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:33:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.005 159 0.005) gunicorn-web stdout | 2025-09-26 08:33:48,270 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:33:48,270 [248] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:33:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:33:48,271 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:33:48,271 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:33:48,271 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:33:48,274 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:33:48,274 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:33:48,279 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:33:48,280 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:33:48,281 [247] [DEBUG] [app] Ending request: urn:request:fb3f5237-f3b3-4515-88c8-462b72eca1f2 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:fb3f5237-f3b3-4515-88c8-462b72eca1f2', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:33:48,281 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:33:48,281 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:33:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:33:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.021 118 0.021) securityworker stdout | 2025-09-26 08:33:48,631 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} notificationworker stdout | 2025-09-26 08:33:50,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:33:50,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:00.692901+00:00 (in 9.999561 seconds) notificationworker stdout | 2025-09-26 08:33:50,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:00 GMT)" (scheduled at 2025-09-26 08:33:50.692901+00:00) notificationworker stdout | 2025-09-26 08:33:50,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:33:50,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 33, 50, 693650), True, datetime.datetime(2025, 9, 26, 8, 33, 50, 693650), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:33:50,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:33:50,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:33:50,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:00 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:33:50,885 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:33:50,886 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:33:52.886914+00:00 (in 2.000790 seconds) exportactionlogsworker stdout | 2025-09-26 08:33:50,886 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:50 GMT)" (scheduled at 2025-09-26 08:33:50.885619+00:00) exportactionlogsworker stdout | 2025-09-26 08:33:50,886 [56] [DEBUG] [workers.queueworker] Getting work item from queue. exportactionlogsworker stdout | 2025-09-26 08:33:50,887 [56] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 33, 50, 886484), True, datetime.datetime(2025, 9, 26, 8, 33, 50, 886484), 0, 'exportactionlogs/%', 50, 1, 0]) exportactionlogsworker stdout | 2025-09-26 08:33:50,894 [56] [DEBUG] [workers.queueworker] No more work. exportactionlogsworker stdout | 2025-09-26 08:33:50,894 [56] [DEBUG] [data.database] Disconnecting from database. exportactionlogsworker stdout | 2025-09-26 08:33:50,894 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:50 GMT)" executed successfully blobuploadcleanupworker stdout | 2025-09-26 08:33:51,936 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} proxycacheblobworker stdout | 2025-09-26 08:33:52,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:33:52,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:02.477454+00:00 (in 9.999570 seconds) proxycacheblobworker stdout | 2025-09-26 08:33:52,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:02 GMT)" (scheduled at 2025-09-26 08:33:52.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:33:52,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:33:52,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 33, 52, 478250), True, datetime.datetime(2025, 9, 26, 8, 33, 52, 478250), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:33:52,485 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:33:52,485 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:33:52,485 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:02 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:33:52,887 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:33:52,887 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:09.886563+00:00 (in 16.999147 seconds) exportactionlogsworker stdout | 2025-09-26 08:33:52,887 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:52 GMT)" (scheduled at 2025-09-26 08:33:52.886914+00:00) exportactionlogsworker stdout | 2025-09-26 08:33:52,887 [56] [DEBUG] [workers.queueworker] Running watchdog. exportactionlogsworker stdout | 2025-09-26 08:33:52,887 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:52 GMT)" executed successfully globalpromstats stdout | 2025-09-26 08:33:55,014 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} proxycacheblobworker stdout | 2025-09-26 08:33:55,741 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} notificationworker stdout | 2025-09-26 08:33:56,835 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} repositoryactioncounter stdout | 2025-09-26 08:33:56,933 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} gcworker stdout | 2025-09-26 08:33:57,083 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:33:57,083 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:07.085344+00:00 (in 10.001579 seconds) gcworker stdout | 2025-09-26 08:33:57,083 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:27 GMT)" (scheduled at 2025-09-26 08:33:57.083344+00:00) gcworker stdout | 2025-09-26 08:33:57,084 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:33:57,084 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:27 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:33:57,121 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} manifestsubjectbackfillworker stdout | 2025-09-26 08:33:57,635 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} gunicorn-web stdout | 2025-09-26 08:33:58,442 [247] [DEBUG] [app] Starting request: urn:request:6869e154-68e1-4e36-8af7-13c25f853b17 (/) {'X-Forwarded-For': '10.130.2.32'} gunicorn-web stdout | 2025-09-26 08:33:58,454 [247] [DEBUG] [endpoints.api.discovery] Unable to find method for POST in class gunicorn-web stdout | 2025-09-26 08:33:58,490 [247] [DEBUG] [app] Ending request: urn:request:6869e154-68e1-4e36-8af7-13c25f853b17 (/) {'endpoint': 'web.index', 'request_id': 'urn:request:6869e154-68e1-4e36-8af7-13c25f853b17', 'remote_addr': '10.130.2.32', 'http_method': 'GET', 'original_url': 'http://quayregistry-quay-app/', 'path': '/', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:33:58,491 [247] [INFO] [gunicorn.access] 10.130.2.32 - - [26/Sep/2025:08:33:58 +0000] "GET / HTTP/1.0" 200 91952 "-" "python-requests/2.32.2" nginx stdout | 10.130.2.32 (-) - - [26/Sep/2025:08:33:58 +0000] "GET / HTTP/1.1" 200 14101 "-" "python-requests/2.32.2" (0.050 152 0.050) namespacegcworker stdout | 2025-09-26 08:33:59,791 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:33:59,791 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:08.793810+00:00 (in 9.002224 seconds) namespacegcworker stdout | 2025-09-26 08:33:59,791 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:59 GMT)" (scheduled at 2025-09-26 08:33:59.791127+00:00) namespacegcworker stdout | 2025-09-26 08:33:59,791 [66] [DEBUG] [workers.queueworker] Getting work item from queue. namespacegcworker stdout | 2025-09-26 08:33:59,792 [66] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 33, 59, 791894), True, datetime.datetime(2025, 9, 26, 8, 33, 59, 791894), 0, 'namespacegc/%', 50, 1, 0]) namespacegcworker stdout | 2025-09-26 08:33:59,799 [66] [DEBUG] [workers.queueworker] No more work. namespacegcworker stdout | 2025-09-26 08:33:59,799 [66] [DEBUG] [data.database] Disconnecting from database. namespacegcworker stdout | 2025-09-26 08:33:59,800 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:34:59 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:34:00,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:34:00,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:10.692901+00:00 (in 9.999540 seconds) notificationworker stdout | 2025-09-26 08:34:00,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:10 GMT)" (scheduled at 2025-09-26 08:34:00.692901+00:00) notificationworker stdout | 2025-09-26 08:34:00,694 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:34:00,695 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 34, 0, 694169), True, datetime.datetime(2025, 9, 26, 8, 34, 0, 694169), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:34:00,702 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:34:00,702 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:34:00,702 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:10 GMT)" executed successfully storagereplication stdout | 2025-09-26 08:34:02,450 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} proxycacheblobworker stdout | 2025-09-26 08:34:02,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:34:02,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:12.477454+00:00 (in 9.999528 seconds) proxycacheblobworker stdout | 2025-09-26 08:34:02,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:12 GMT)" (scheduled at 2025-09-26 08:34:02.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:34:02,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:34:02,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 34, 2, 478693), True, datetime.datetime(2025, 9, 26, 8, 34, 2, 478693), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:34:02,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:34:02,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:34:02,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:12 GMT)" executed successfully namespacegcworker stdout | 2025-09-26 08:34:02,842 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-web stdout | 2025-09-26 08:34:03,200 [250] [DEBUG] [app] Starting request: urn:request:9ca52b4c-1a9a-45f3-8d8f-e499c1977733 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:34:03,201 [250] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:34:03,203 [251] [DEBUG] [app] Starting request: urn:request:7e6154aa-bfdc-462c-bc13-1da8d3f42c98 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:34:03,203 [251] [DEBUG] [app] Ending request: urn:request:7e6154aa-bfdc-462c-bc13-1da8d3f42c98 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:7e6154aa-bfdc-462c-bc13-1da8d3f42c98', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:34:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-registry stdout | 2025-09-26 08:34:03,204 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:34:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:34:03,204 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:34:03,205 [250] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:34:03,207 [248] [DEBUG] [app] Starting request: urn:request:ee5ee3f5-f452-4b51-a55d-2c608d10d367 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:34:03,207 [248] [DEBUG] [app] Ending request: urn:request:ee5ee3f5-f452-4b51-a55d-2c608d10d367 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:ee5ee3f5-f452-4b51-a55d-2c608d10d367', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:34:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.002) gunicorn-web stdout | 2025-09-26 08:34:03,208 [248] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:34:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:34:03,208 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:34:03,209 [250] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:34:03,209 [250] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:34:03,209 [250] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:34:03,213 [250] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:34:03,213 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:34:03,218 [250] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:34:03,219 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:34:03,220 [250] [DEBUG] [app] Ending request: urn:request:9ca52b4c-1a9a-45f3-8d8f-e499c1977733 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:9ca52b4c-1a9a-45f3-8d8f-e499c1977733', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:34:03,220 [250] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:34:03,221 [250] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:34:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:34:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.022 118 0.022) gunicorn-web stdout | 2025-09-26 08:34:03,261 [250] [DEBUG] [app] Starting request: urn:request:be94134b-cd37-42a3-a18b-73e04bfb2ac6 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:34:03,268 [251] [DEBUG] [app] Starting request: urn:request:1df2ef88-7e86-4e29-8962-9b331656e1da (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:34:03,268 [251] [DEBUG] [app] Ending request: urn:request:1df2ef88-7e86-4e29-8962-9b331656e1da (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:1df2ef88-7e86-4e29-8962-9b331656e1da', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:34:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-registry stdout | 2025-09-26 08:34:03,268 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:34:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:34:03,269 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:34:03,270 [250] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:34:03,271 [250] [DEBUG] [app] Starting request: urn:request:3c80c030-247d-4116-964b-1026a2d934f5 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:34:03,272 [250] [DEBUG] [app] Ending request: urn:request:3c80c030-247d-4116-964b-1026a2d934f5 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:3c80c030-247d-4116-964b-1026a2d934f5', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:34:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:34:03,272 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:34:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:34:03,272 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:34:03,273 [250] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:34:03,273 [250] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:34:03,273 [250] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:34:03,276 [250] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:34:03,277 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:34:03,282 [250] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:34:03,283 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:34:03,283 [250] [DEBUG] [app] Ending request: urn:request:be94134b-cd37-42a3-a18b-73e04bfb2ac6 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:be94134b-cd37-42a3-a18b-73e04bfb2ac6', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:34:03,284 [250] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:34:03,284 [250] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:34:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:34:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.023 118 0.023) autopruneworker stdout | 2025-09-26 08:34:04,230 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} expiredappspecifictokenworker stdout | 2025-09-26 08:34:04,313 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} manifestbackfillworker stdout | 2025-09-26 08:34:04,528 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} builder stdout | 2025-09-26 08:34:04,915 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} logrotateworker stdout | 2025-09-26 08:34:06,230 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gcworker stdout | 2025-09-26 08:34:07,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:34:07,085 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:27.083344+00:00 (in 19.997590 seconds) gcworker stdout | 2025-09-26 08:34:07,085 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:37 GMT)" (scheduled at 2025-09-26 08:34:07.085344+00:00) gcworker stdout | 2025-09-26 08:34:07,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gcworker stdout | 2025-09-26 08:34:07,092 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875347092, None, 1, 0]) gcworker stdout | 2025-09-26 08:34:07,094 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:34:07,094 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:37 GMT)" executed successfully securityworker stdout | 2025-09-26 08:34:07,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:34:07,683 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:11.684816+00:00 (in 4.000892 seconds) securityworker stdout | 2025-09-26 08:34:07,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:37 GMT)" (scheduled at 2025-09-26 08:34:07.683505+00:00) securityworker stdout | 2025-09-26 08:34:07,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:34:07,684 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:34:07,689 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:34:07,691 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:34:07,697 [86] [DEBUG] [peewee] ('SELECT Min("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:34:07,698 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:34:07,698 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:37 GMT)" executed successfully namespacegcworker stdout | 2025-09-26 08:34:08,794 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:34:08,794 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:59.791127+00:00 (in 50.996239 seconds) namespacegcworker stdout | 2025-09-26 08:34:08,795 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:08 GMT)" (scheduled at 2025-09-26 08:34:08.793810+00:00) namespacegcworker stdout | 2025-09-26 08:34:08,795 [66] [DEBUG] [workers.queueworker] Running watchdog. namespacegcworker stdout | 2025-09-26 08:34:08,795 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:08 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:34:09,565 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:34:09,571 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:34:09,613 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:34:09,617 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:34:09,622 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gcworker stdout | 2025-09-26 08:34:09,734 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} exportactionlogsworker stdout | 2025-09-26 08:34:09,886 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:34:09,887 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:50.885619+00:00 (in 40.998228 seconds) exportactionlogsworker stdout | 2025-09-26 08:34:09,887 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:39:09 GMT)" (scheduled at 2025-09-26 08:34:09.886563+00:00) exportactionlogsworker stdout | 2025-09-26 08:34:09,888 [56] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [False, datetime.datetime(2025, 9, 26, 8, 34, 9, 887667), 'exportactionlogs/%']) exportactionlogsworker stdout | 2025-09-26 08:34:09,899 [56] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 34, 9, 887667), True, datetime.datetime(2025, 9, 26, 8, 34, 9, 887667), 0, 'exportactionlogs/%']) exportactionlogsworker stdout | 2025-09-26 08:34:09,901 [56] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) AND NOT ("t1"."queue_name" IN (SELECT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s)))))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 34, 9, 887667), True, datetime.datetime(2025, 9, 26, 8, 34, 9, 887667), 0, 'exportactionlogs/%', False, datetime.datetime(2025, 9, 26, 8, 34, 9, 887667), 'exportactionlogs/%']) exportactionlogsworker stdout | 2025-09-26 08:34:09,903 [56] [DEBUG] [data.database] Disconnecting from database. exportactionlogsworker stdout | 2025-09-26 08:34:09,903 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:39:09 GMT)" executed successfully securityscanningnotificationworker stdout | 2025-09-26 08:34:09,914 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} queuecleanupworker stdout | 2025-09-26 08:34:10,124 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} gunicorn-secscan stdout | 2025-09-26 08:34:10,275 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:34:10,278 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} gunicorn-secscan stdout | 2025-09-26 08:34:10,284 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} securityscanningnotificationworker stdout | 2025-09-26 08:34:10,584 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:34:10,584 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:28.587130+00:00 (in 18.002285 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:34:10,585 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:10 GMT)" (scheduled at 2025-09-26 08:34:10.584403+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:34:10,585 [82] [DEBUG] [workers.queueworker] Getting work item from queue. securityscanningnotificationworker stdout | 2025-09-26 08:34:10,585 [82] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 34, 10, 585183), True, datetime.datetime(2025, 9, 26, 8, 34, 10, 585183), 0, 'secscanv4/%', 50, 1, 0]) securityscanningnotificationworker stdout | 2025-09-26 08:34:10,592 [82] [DEBUG] [workers.queueworker] No more work. securityscanningnotificationworker stdout | 2025-09-26 08:34:10,592 [82] [DEBUG] [data.database] Disconnecting from database. securityscanningnotificationworker stdout | 2025-09-26 08:34:10,592 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:10 GMT)" executed successfully autopruneworker stdout | 2025-09-26 08:34:10,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:34:10,598 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:40.598100+00:00 (in 29.999595 seconds) autopruneworker stdout | 2025-09-26 08:34:10,598 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:40 GMT)" (scheduled at 2025-09-26 08:34:10.598100+00:00) autopruneworker stdout | 2025-09-26 08:34:10,603 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758872050602, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:34:10,605 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:34:10,606 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:34:10,606 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:40 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:34:10,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:34:10,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:20.692901+00:00 (in 9.999581 seconds) notificationworker stdout | 2025-09-26 08:34:10,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:20 GMT)" (scheduled at 2025-09-26 08:34:10.692901+00:00) notificationworker stdout | 2025-09-26 08:34:10,694 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:34:10,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 34, 10, 694095), True, datetime.datetime(2025, 9, 26, 8, 34, 10, 694095), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:34:10,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:34:10,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:34:10,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:20 GMT)" executed successfully chunkcleanupworker stdout | 2025-09-26 08:34:10,941 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} securityworker stdout | 2025-09-26 08:34:11,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:34:11,685 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:37.683505+00:00 (in 25.997805 seconds) securityworker stdout | 2025-09-26 08:34:11,685 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:41 GMT)" (scheduled at 2025-09-26 08:34:11.684816+00:00) securityworker stdout | 2025-09-26 08:34:11,686 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:34:11,686 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:34:11,688 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:34:11,691 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:34:11,697 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:34:11,697 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:34:11,697 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:34:11,697 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:34:11,698 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 2]) securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:34:11,700 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:34:11,700 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:34:11,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:34:11,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:34:11,700 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:34:11,700 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:34:11,700 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:34:11,700 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:34:11,700 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:34:11,700 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:34:11,700 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:34:11,701 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 29, 11, 691123), 1, 2]) securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:34:11,702 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:34:11,702 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:34:11,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:34:11,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:34:11,702 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:34:11,702 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:34:11,702 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:34:11,702 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:34:11,702 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:34:11,702 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:34:11,702 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:34:11,703 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 29, 11, 691123), 1, 2]) securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:34:11,704 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:34:11,704 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:34:11,704 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:34:11,704 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:34:11,704 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:34:11,704 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:34:11,704 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:34:11,704 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:34:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:34:11,704 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:41 GMT)" executed successfully repositorygcworker stdout | 2025-09-26 08:34:11,929 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} proxycacheblobworker stdout | 2025-09-26 08:34:12,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:34:12,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:22.477454+00:00 (in 9.999522 seconds) proxycacheblobworker stdout | 2025-09-26 08:34:12,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:22 GMT)" (scheduled at 2025-09-26 08:34:12.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:34:12,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:34:12,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 34, 12, 478292), True, datetime.datetime(2025, 9, 26, 8, 34, 12, 478292), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:34:12,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:34:12,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:34:12,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:22 GMT)" executed successfully servicekey stdout | 2025-09-26 08:34:12,540 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:34:12,626 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} gunicorn-registry stdout | 2025-09-26 08:34:14,023 [59] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '59'} gunicorn-registry stdout | 2025-09-26 08:34:14,030 [257] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '257'} gunicorn-registry stdout | 2025-09-26 08:34:14,037 [253] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '253'} gunicorn-registry stdout | 2025-09-26 08:34:14,044 [256] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '256'} gunicorn-registry stdout | 2025-09-26 08:34:14,048 [255] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '255'} gunicorn-registry stdout | 2025-09-26 08:34:14,055 [258] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '258'} gunicorn-registry stdout | 2025-09-26 08:34:14,063 [251] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '251'} gunicorn-registry stdout | 2025-09-26 08:34:14,067 [252] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '252'} gunicorn-registry stdout | 2025-09-26 08:34:14,089 [254] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '254'} buildlogsarchiver stdout | 2025-09-26 08:34:15,447 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} buildlogsarchiver stdout | 2025-09-26 08:34:17,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:34:17,375 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:47.375102+00:00 (in 29.999505 seconds) buildlogsarchiver stdout | 2025-09-26 08:34:17,375 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:47 GMT)" (scheduled at 2025-09-26 08:34:17.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:34:17,376 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 34, 17, 375889), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:34:17,384 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:34:17,384 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:34:17,384 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:47 GMT)" executed successfully manifestsubjectbackfillworker stdout | 2025-09-26 08:34:17,985 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:34:17,986 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:33.984400+00:00 (in 15.998190 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:34:17,986 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:17 GMT)" (scheduled at 2025-09-26 08:34:17.985743+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:34:17,986 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."artifact_type_backfilled" = %s) OR ("t1"."artifact_type_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:34:17,993 [64] [DEBUG] [__main__] Manifest artifact_type backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:34:17,993 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:34:17,993 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:17 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:34:18,199 [248] [DEBUG] [app] Starting request: urn:request:37b56c03-0b54-49e3-92d2-a750ba6d109f (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:34:18,208 [248] [DEBUG] [urllib3.connectionpool] Starting new HTTP connection (1): localhost:8080 gunicorn-registry stdout | 2025-09-26 08:34:18,210 [251] [DEBUG] [app] Starting request: urn:request:a819e686-719b-4b1c-9633-297d6b0ebfe4 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:34:18,210 [251] [DEBUG] [app] Ending request: urn:request:a819e686-719b-4b1c-9633-297d6b0ebfe4 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:a819e686-719b-4b1c-9633-297d6b0ebfe4', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:34:18,211 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:34:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:34:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:34:18,211 [248] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:34:18,212 [248] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:34:18,213 [247] [DEBUG] [app] Starting request: urn:request:3172c1ea-5733-492f-ac16-8c521fd388ee (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:34:18,214 [247] [DEBUG] [app] Ending request: urn:request:3172c1ea-5733-492f-ac16-8c521fd388ee (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:3172c1ea-5733-492f-ac16-8c521fd388ee', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:34:18 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:34:18,214 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:34:18 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:34:18,214 [248] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:34:18,216 [248] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."kid", "t1"."service", "t1"."jwk", "t1"."metadata", "t1"."created_date", "t1"."expiration_date", "t1"."rotation_duration", "t1"."approval_id" FROM "servicekey" AS "t1" LEFT OUTER JOIN "servicekeyapproval" AS "t2" ON ("t1"."approval_id" = "t2"."id") WHERE ((((NOT ("t1"."approval_id" IS %s) AND (("t1"."expiration_date" > %s) OR ("t1"."expiration_date" IS %s))) AND ("t1"."service" = %s)) AND (NOT (("t1"."service" = %s) AND ("t1"."expiration_date" <= %s)) OR NOT ((("t1"."service" = %s) AND ("t1"."approval_id" IS %s)) AND ("t1"."created_date" <= %s)))) AND (NOT ("t1"."expiration_date" <= %s) OR ("t1"."expiration_date" IS %s)))', [None, datetime.datetime(2025, 9, 26, 8, 34, 18, 215804), None, 'quay', 'quay', datetime.datetime(2025, 9, 26, 8, 34, 18, 215838), 'quay', None, datetime.datetime(2025, 9, 25, 8, 34, 18, 215869), datetime.datetime(2025, 9, 19, 8, 34, 18, 215885), None]) gunicorn-web stdout | 2025-09-26 08:34:18,225 [248] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:34:18,226 [248] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:34:18,226 [248] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:34:18,230 [248] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:34:18,230 [248] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:34:18,231 [248] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:34:18,232 [248] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:34:18,233 [248] [DEBUG] [app] Ending request: urn:request:37b56c03-0b54-49e3-92d2-a750ba6d109f (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:37b56c03-0b54-49e3-92d2-a750ba6d109f', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:34:18,233 [248] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:34:18,234 [248] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:34:18 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:34:18 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.036 118 0.036) gunicorn-web stdout | 2025-09-26 08:34:18,262 [247] [DEBUG] [app] Starting request: urn:request:288d0a09-c6b4-41c8-af2d-00ee47492b2f (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:34:18,263 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:34:18,265 [251] [DEBUG] [app] Starting request: urn:request:d196edd1-08f1-4ec3-b436-3a8fde81402b (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:34:18,265 [251] [DEBUG] [app] Ending request: urn:request:d196edd1-08f1-4ec3-b436-3a8fde81402b (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:d196edd1-08f1-4ec3-b436-3a8fde81402b', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:34:18,265 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:34:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:34:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:34:18,266 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:34:18,266 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:34:18,268 [250] [DEBUG] [app] Starting request: urn:request:f58e36fe-4eb1-46fc-871c-22de1f24e96e (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:34:18,268 [250] [DEBUG] [app] Ending request: urn:request:f58e36fe-4eb1-46fc-871c-22de1f24e96e (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:f58e36fe-4eb1-46fc-871c-22de1f24e96e', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:34:18,269 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:34:18 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:34:18,269 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:34:18 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:34:18,269 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:34:18,269 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:34:18,269 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:34:18,273 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:34:18,273 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:34:18,278 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:34:18,279 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:34:18,280 [247] [DEBUG] [app] Ending request: urn:request:288d0a09-c6b4-41c8-af2d-00ee47492b2f (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:288d0a09-c6b4-41c8-af2d-00ee47492b2f', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:34:18,280 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:34:18,280 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:34:18 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:34:18 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.019 118 0.019) securityworker stdout | 2025-09-26 08:34:18,652 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} repositorygcworker stdout | 2025-09-26 08:34:19,075 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:34:19,076 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:28.077240+00:00 (in 9.001090 seconds) repositorygcworker stdout | 2025-09-26 08:34:19,076 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:19 GMT)" (scheduled at 2025-09-26 08:34:19.075668+00:00) repositorygcworker stdout | 2025-09-26 08:34:19,076 [81] [DEBUG] [workers.queueworker] Getting work item from queue. repositorygcworker stdout | 2025-09-26 08:34:19,077 [81] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 34, 19, 76476), True, datetime.datetime(2025, 9, 26, 8, 34, 19, 76476), 0, 'repositorygc/%', 50, 1, 0]) repositorygcworker stdout | 2025-09-26 08:34:19,085 [81] [DEBUG] [workers.queueworker] No more work. repositorygcworker stdout | 2025-09-26 08:34:19,085 [81] [DEBUG] [data.database] Disconnecting from database. repositorygcworker stdout | 2025-09-26 08:34:19,085 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:19 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:34:20,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:34:20,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:30.692901+00:00 (in 9.999578 seconds) notificationworker stdout | 2025-09-26 08:34:20,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:30 GMT)" (scheduled at 2025-09-26 08:34:20.692901+00:00) notificationworker stdout | 2025-09-26 08:34:20,694 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:34:20,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 34, 20, 694057), True, datetime.datetime(2025, 9, 26, 8, 34, 20, 694057), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:34:20,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:34:20,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:34:20,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:30 GMT)" executed successfully blobuploadcleanupworker stdout | 2025-09-26 08:34:21,952 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} proxycacheblobworker stdout | 2025-09-26 08:34:22,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:34:22,478 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:26.483749+00:00 (in 4.005746 seconds) proxycacheblobworker stdout | 2025-09-26 08:34:22,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:32 GMT)" (scheduled at 2025-09-26 08:34:22.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:34:22,479 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:34:22,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 34, 22, 479120), True, datetime.datetime(2025, 9, 26, 8, 34, 22, 479120), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:34:22,491 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:34:22,491 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:34:22,491 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:32 GMT)" executed successfully globalpromstats stdout | 2025-09-26 08:34:25,030 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} proxycacheblobworker stdout | 2025-09-26 08:34:25,759 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} proxycacheblobworker stdout | 2025-09-26 08:34:26,484 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:34:26,484 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:32.477454+00:00 (in 5.993174 seconds) proxycacheblobworker stdout | 2025-09-26 08:34:26,484 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:26 GMT)" (scheduled at 2025-09-26 08:34:26.483749+00:00) proxycacheblobworker stdout | 2025-09-26 08:34:26,484 [69] [DEBUG] [workers.queueworker] Running watchdog. proxycacheblobworker stdout | 2025-09-26 08:34:26,484 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:26 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:34:26,851 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} repositoryactioncounter stdout | 2025-09-26 08:34:26,947 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} gcworker stdout | 2025-09-26 08:34:27,083 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:34:27,083 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:37.085344+00:00 (in 10.001557 seconds) gcworker stdout | 2025-09-26 08:34:27,083 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:57 GMT)" (scheduled at 2025-09-26 08:34:27.083344+00:00) gcworker stdout | 2025-09-26 08:34:27,084 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:34:27,084 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:34:57 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:34:27,135 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} manifestsubjectbackfillworker stdout | 2025-09-26 08:34:27,652 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} repositorygcworker stdout | 2025-09-26 08:34:28,077 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:34:28,077 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:45.076950+00:00 (in 16.999249 seconds) repositorygcworker stdout | 2025-09-26 08:34:28,077 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:28 GMT)" (scheduled at 2025-09-26 08:34:28.077240+00:00) repositorygcworker stdout | 2025-09-26 08:34:28,078 [81] [DEBUG] [workers.queueworker] Running watchdog. repositorygcworker stdout | 2025-09-26 08:34:28,078 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:28 GMT)" executed successfully securityscanningnotificationworker stdout | 2025-09-26 08:34:28,587 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:34:28,587 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:10.584403+00:00 (in 41.996845 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:34:28,587 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:28 GMT)" (scheduled at 2025-09-26 08:34:28.587130+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:34:28,588 [82] [DEBUG] [workers.queueworker] Running watchdog. securityscanningnotificationworker stdout | 2025-09-26 08:34:28,588 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:28 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:34:30,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:34:30,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:37.771811+00:00 (in 7.078470 seconds) notificationworker stdout | 2025-09-26 08:34:30,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:40 GMT)" (scheduled at 2025-09-26 08:34:30.692901+00:00) notificationworker stdout | 2025-09-26 08:34:30,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:34:30,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 34, 30, 693660), True, datetime.datetime(2025, 9, 26, 8, 34, 30, 693660), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:34:30,702 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:34:30,702 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:34:30,702 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:40 GMT)" executed successfully storagereplication stdout | 2025-09-26 08:34:32,466 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} proxycacheblobworker stdout | 2025-09-26 08:34:32,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:34:32,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:42.477454+00:00 (in 9.999585 seconds) proxycacheblobworker stdout | 2025-09-26 08:34:32,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:42 GMT)" (scheduled at 2025-09-26 08:34:32.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:34:32,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:34:32,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 34, 32, 478588), True, datetime.datetime(2025, 9, 26, 8, 34, 32, 478588), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:34:32,488 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:34:32,488 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:34:32,488 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:42 GMT)" executed successfully namespacegcworker stdout | 2025-09-26 08:34:32,858 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-web stdout | 2025-09-26 08:34:33,199 [247] [DEBUG] [app] Starting request: urn:request:c46c8c55-8965-4a4a-8aaa-38d066c602f6 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:34:33,200 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:34:33,201 [251] [DEBUG] [app] Starting request: urn:request:3f8ed75c-b5d3-4757-9121-3bf0e4e6ee58 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:34:33,202 [251] [DEBUG] [app] Ending request: urn:request:3f8ed75c-b5d3-4757-9121-3bf0e4e6ee58 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:3f8ed75c-b5d3-4757-9121-3bf0e4e6ee58', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:34:33,202 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:34:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:34:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:34:33,202 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:34:33,204 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:34:33,206 [248] [DEBUG] [app] Starting request: urn:request:232fa7c7-3ab4-40ef-9b98-f7026e6fe6a2 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:34:33,206 [248] [DEBUG] [app] Ending request: urn:request:232fa7c7-3ab4-40ef-9b98-f7026e6fe6a2 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:232fa7c7-3ab4-40ef-9b98-f7026e6fe6a2', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:34:33,207 [248] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:34:33 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:34:33,207 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:34:33 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.001) gunicorn-web stdout | 2025-09-26 08:34:33,207 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:34:33,207 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:34:33,207 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:34:33,213 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:34:33,213 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:34:33,217 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:34:33,219 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:34:33,219 [247] [DEBUG] [app] Ending request: urn:request:c46c8c55-8965-4a4a-8aaa-38d066c602f6 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:c46c8c55-8965-4a4a-8aaa-38d066c602f6', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:34:33,219 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:34:33,220 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:34:33 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:34:33 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.021 118 0.021) gunicorn-web stdout | 2025-09-26 08:34:33,261 [247] [DEBUG] [app] Starting request: urn:request:f13ccb7c-2be8-43be-be33-b9d520340a22 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:34:33,265 [251] [DEBUG] [app] Starting request: urn:request:628d9db4-047f-4b39-9d5c-6572f2f0ebf7 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:34:33,265 [251] [DEBUG] [app] Ending request: urn:request:628d9db4-047f-4b39-9d5c-6572f2f0ebf7 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:628d9db4-047f-4b39-9d5c-6572f2f0ebf7', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:34:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-registry stdout | 2025-09-26 08:34:33,266 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:34:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:34:33,266 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:34:33,267 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:34:33,268 [248] [DEBUG] [app] Starting request: urn:request:acd31a4c-dc61-466b-bf47-e8c006079f8e (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:34:33,269 [248] [DEBUG] [app] Ending request: urn:request:acd31a4c-dc61-466b-bf47-e8c006079f8e (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:acd31a4c-dc61-466b-bf47-e8c006079f8e', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:34:33 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.002) gunicorn-web stdout | 2025-09-26 08:34:33,269 [248] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:34:33 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:34:33,269 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:34:33,269 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:34:33,270 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:34:33,270 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:34:33,273 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:34:33,273 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:34:33,278 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:34:33,279 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:34:33,280 [247] [DEBUG] [app] Ending request: urn:request:f13ccb7c-2be8-43be-be33-b9d520340a22 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:f13ccb7c-2be8-43be-be33-b9d520340a22', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:34:33,280 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:34:33,281 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:34:33 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:34:33 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.020 118 0.020) manifestsubjectbackfillworker stdout | 2025-09-26 08:34:33,984 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:34:33,984 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:17.985743+00:00 (in 44.000919 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:34:33,984 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:33 GMT)" (scheduled at 2025-09-26 08:34:33.984400+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:34:33,985 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."subject_backfilled" = %s) OR ("t1"."subject_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:34:33,992 [64] [DEBUG] [__main__] Manifest subject backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:34:33,992 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:34:33,993 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:33 GMT)" executed successfully autopruneworker stdout | 2025-09-26 08:34:34,246 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} expiredappspecifictokenworker stdout | 2025-09-26 08:34:34,329 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} manifestbackfillworker stdout | 2025-09-26 08:34:34,544 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} builder stdout | 2025-09-26 08:34:34,932 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} logrotateworker stdout | 2025-09-26 08:34:36,247 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gcworker stdout | 2025-09-26 08:34:37,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:34:37,085 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:57.083344+00:00 (in 19.997569 seconds) gcworker stdout | 2025-09-26 08:34:37,085 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:07 GMT)" (scheduled at 2025-09-26 08:34:37.085344+00:00) gcworker stdout | 2025-09-26 08:34:37,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gcworker stdout | 2025-09-26 08:34:37,092 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875377092, None, 1, 0]) gcworker stdout | 2025-09-26 08:34:37,094 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:34:37,094 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:07 GMT)" executed successfully securityworker stdout | 2025-09-26 08:34:37,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:34:37,684 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:41.684816+00:00 (in 4.000817 seconds) securityworker stdout | 2025-09-26 08:34:37,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:07 GMT)" (scheduled at 2025-09-26 08:34:37.683505+00:00) securityworker stdout | 2025-09-26 08:34:37,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:34:37,684 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:34:37,689 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:34:37,690 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:34:37,696 [86] [DEBUG] [peewee] ('SELECT Min("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:34:37,697 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:34:37,698 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:07 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:34:37,772 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:34:37,772 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:40.692901+00:00 (in 2.920529 seconds) notificationworker stdout | 2025-09-26 08:34:37,772 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:37 GMT)" (scheduled at 2025-09-26 08:34:37.771811+00:00) notificationworker stdout | 2025-09-26 08:34:37,772 [68] [DEBUG] [workers.queueworker] Running watchdog. notificationworker stdout | 2025-09-26 08:34:37,772 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:37 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:34:39,261 [247] [DEBUG] [app] Starting request: urn:request:66877d60-5214-4fc2-94cc-d8dc08c068e1 (/api/v1/user/notifications) {'X-Forwarded-For': '209.132.188.14, 10.129.4.11'} gunicorn-web stdout | 2025-09-26 08:34:39,263 [247] [DEBUG] [app] Ending request: urn:request:66877d60-5214-4fc2-94cc-d8dc08c068e1 (/api/v1/user/notifications) {'endpoint': 'api.usernotificationlist', 'request_id': 'urn:request:66877d60-5214-4fc2-94cc-d8dc08c068e1', 'remote_addr': '10.129.4.11', 'http_method': 'GET', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/api/v1/user/notifications', 'path': '/api/v1/user/notifications', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36'} gunicorn-web stdout | 2025-09-26 08:34:39,263 [247] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:34:39 +0000] "GET /api/v1/user/notifications HTTP/1.0" 401 288 "https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/superuser/?tab=organizations" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:34:39 +0000] "GET /api/v1/user/notifications HTTP/1.1" 401 288 "https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/superuser/?tab=organizations" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36" (0.003 2412 0.003) gunicorn-web stdout | 2025-09-26 08:34:39,582 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:34:39,588 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:34:39,631 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:34:39,635 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:34:39,639 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gcworker stdout | 2025-09-26 08:34:39,748 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} securityscanningnotificationworker stdout | 2025-09-26 08:34:39,931 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} queuecleanupworker stdout | 2025-09-26 08:34:40,139 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} gunicorn-secscan stdout | 2025-09-26 08:34:40,293 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:34:40,299 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} gunicorn-secscan stdout | 2025-09-26 08:34:40,303 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} autopruneworker stdout | 2025-09-26 08:34:40,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:34:40,598 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:10.598100+00:00 (in 29.999493 seconds) autopruneworker stdout | 2025-09-26 08:34:40,598 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:10 GMT)" (scheduled at 2025-09-26 08:34:40.598100+00:00) autopruneworker stdout | 2025-09-26 08:34:40,604 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758872080604, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:34:40,607 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:34:40,607 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:34:40,607 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:10 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:34:40,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:34:40,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:50.692901+00:00 (in 9.999546 seconds) notificationworker stdout | 2025-09-26 08:34:40,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:50 GMT)" (scheduled at 2025-09-26 08:34:40.692901+00:00) notificationworker stdout | 2025-09-26 08:34:40,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:34:40,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 34, 40, 693660), True, datetime.datetime(2025, 9, 26, 8, 34, 40, 693660), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:34:40,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:34:40,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:34:40,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:50 GMT)" executed successfully chunkcleanupworker stdout | 2025-09-26 08:34:40,958 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} securityworker stdout | 2025-09-26 08:34:41,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:34:41,685 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:07.683505+00:00 (in 25.998207 seconds) securityworker stdout | 2025-09-26 08:34:41,685 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:11 GMT)" (scheduled at 2025-09-26 08:34:41.684816+00:00) securityworker stdout | 2025-09-26 08:34:41,685 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:34:41,685 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:34:41,687 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:34:41,690 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:34:41,695 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:34:41,695 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:34:41,695 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:34:41,695 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:34:41,697 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 2]) securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:34:41,699 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:34:41,699 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:34:41,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:34:41,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:34:41,700 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:34:41,700 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:34:41,700 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:34:41,700 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:34:41,700 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:34:41,700 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:34:41,700 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:34:41,701 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 29, 41, 690127), 1, 2]) securityworker stdout | 2025-09-26 08:34:41,702 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:34:41,702 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:34:41,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:34:41,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:34:41,702 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:34:41,702 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:34:41,702 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:34:41,702 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:34:41,702 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:34:41,702 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:34:41,702 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:34:41,703 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 29, 41, 690127), 1, 2]) securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:34:41,704 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:34:41,705 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:34:41,705 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:34:41,705 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:34:41,705 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:34:41,705 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:34:41,705 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:34:41,705 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:34:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:34:41,705 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:11 GMT)" executed successfully repositorygcworker stdout | 2025-09-26 08:34:41,944 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} proxycacheblobworker stdout | 2025-09-26 08:34:42,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:34:42,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:52.477454+00:00 (in 9.999508 seconds) proxycacheblobworker stdout | 2025-09-26 08:34:42,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:52 GMT)" (scheduled at 2025-09-26 08:34:42.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:34:42,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:34:42,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 34, 42, 478361), True, datetime.datetime(2025, 9, 26, 8, 34, 42, 478361), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:34:42,485 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:34:42,485 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:34:42,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:34:52 GMT)" executed successfully servicekey stdout | 2025-09-26 08:34:42,558 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:34:42,642 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} gunicorn-registry stdout | 2025-09-26 08:34:44,043 [59] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '59'} gunicorn-registry stdout | 2025-09-26 08:34:44,048 [257] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '257'} gunicorn-registry stdout | 2025-09-26 08:34:44,057 [253] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '253'} gunicorn-registry stdout | 2025-09-26 08:34:44,064 [256] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '256'} gunicorn-registry stdout | 2025-09-26 08:34:44,067 [255] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '255'} gunicorn-registry stdout | 2025-09-26 08:34:44,079 [258] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '258'} gunicorn-registry stdout | 2025-09-26 08:34:44,085 [251] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '251'} gunicorn-registry stdout | 2025-09-26 08:34:44,091 [252] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '252'} gunicorn-registry stdout | 2025-09-26 08:34:44,109 [254] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '254'} repositorygcworker stdout | 2025-09-26 08:34:45,077 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:34:45,077 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:19.075668+00:00 (in 33.998294 seconds) repositorygcworker stdout | 2025-09-26 08:34:45,077 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:39:45 GMT)" (scheduled at 2025-09-26 08:34:45.076950+00:00) repositorygcworker stdout | 2025-09-26 08:34:45,078 [81] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [False, datetime.datetime(2025, 9, 26, 8, 34, 45, 77685), 'repositorygc/%']) repositorygcworker stdout | 2025-09-26 08:34:45,085 [81] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 34, 45, 77685), True, datetime.datetime(2025, 9, 26, 8, 34, 45, 77685), 0, 'repositorygc/%']) repositorygcworker stdout | 2025-09-26 08:34:45,086 [81] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) AND NOT ("t1"."queue_name" IN (SELECT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s)))))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 34, 45, 77685), True, datetime.datetime(2025, 9, 26, 8, 34, 45, 77685), 0, 'repositorygc/%', False, datetime.datetime(2025, 9, 26, 8, 34, 45, 77685), 'repositorygc/%']) repositorygcworker stdout | 2025-09-26 08:34:45,088 [81] [DEBUG] [data.database] Disconnecting from database. repositorygcworker stdout | 2025-09-26 08:34:45,088 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:39:45 GMT)" executed successfully buildlogsarchiver stdout | 2025-09-26 08:34:45,464 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} buildlogsarchiver stdout | 2025-09-26 08:34:47,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:34:47,375 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:17.375102+00:00 (in 29.999561 seconds) buildlogsarchiver stdout | 2025-09-26 08:34:47,375 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:17 GMT)" (scheduled at 2025-09-26 08:34:47.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:34:47,376 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 34, 47, 375822), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:34:47,383 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:34:47,384 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:34:47,384 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:17 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:34:48,199 [247] [DEBUG] [app] Starting request: urn:request:06192457-ce8a-4d29-a00c-2d49354ee503 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:34:48,200 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:34:48,202 [258] [DEBUG] [app] Starting request: urn:request:ffeb3a1f-ba2f-41d4-8eab-f91a990bc9ea (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:34:48,203 [258] [DEBUG] [app] Ending request: urn:request:ffeb3a1f-ba2f-41d4-8eab-f91a990bc9ea (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:ffeb3a1f-ba2f-41d4-8eab-f91a990bc9ea', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:34:48,203 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:34:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:34:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:34:48,203 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:34:48,204 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:34:48,205 [247] [DEBUG] [app] Starting request: urn:request:19ef1273-2cb1-4867-9207-fba76ef53374 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:34:48,206 [247] [DEBUG] [app] Ending request: urn:request:19ef1273-2cb1-4867-9207-fba76ef53374 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:19ef1273-2cb1-4867-9207-fba76ef53374', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:34:48,206 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:34:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:34:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:34:48,206 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:34:48,207 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:34:48,207 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:34:48,207 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:34:48,211 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:34:48,211 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:34:48,215 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:34:48,216 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:34:48,217 [247] [DEBUG] [app] Ending request: urn:request:06192457-ce8a-4d29-a00c-2d49354ee503 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:06192457-ce8a-4d29-a00c-2d49354ee503', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:34:48,217 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:34:48,217 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:34:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:34:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.019 118 0.019) gunicorn-web stdout | 2025-09-26 08:34:48,261 [247] [DEBUG] [app] Starting request: urn:request:2b25c6be-9264-4321-a26f-f768d5672bb7 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:34:48,263 [258] [DEBUG] [app] Starting request: urn:request:bae96d00-c3be-46b3-a6e6-cc12829899fa (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:34:48,263 [258] [DEBUG] [app] Ending request: urn:request:bae96d00-c3be-46b3-a6e6-cc12829899fa (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:bae96d00-c3be-46b3-a6e6-cc12829899fa', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:34:48,266 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:34:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.004 162 0.004) gunicorn-web stdout | 2025-09-26 08:34:48,267 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:34:48,268 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:34:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:34:48,269 [248] [DEBUG] [app] Starting request: urn:request:a7139bdc-e508-4fb5-bc4c-817d0e24d2e2 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:34:48,270 [248] [DEBUG] [app] Ending request: urn:request:a7139bdc-e508-4fb5-bc4c-817d0e24d2e2 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:a7139bdc-e508-4fb5-bc4c-817d0e24d2e2', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:34:48,270 [248] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:34:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:34:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:34:48,270 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:34:48,273 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:34:48,273 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:34:48,273 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:34:48,277 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:34:48,277 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:34:48,281 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:34:48,282 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:34:48,283 [247] [DEBUG] [app] Ending request: urn:request:2b25c6be-9264-4321-a26f-f768d5672bb7 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:2b25c6be-9264-4321-a26f-f768d5672bb7', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:34:48,283 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:34:48,284 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:34:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:34:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.023 118 0.023) securityworker stdout | 2025-09-26 08:34:48,669 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} notificationworker stdout | 2025-09-26 08:34:50,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:34:50,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:00.692901+00:00 (in 9.999162 seconds) notificationworker stdout | 2025-09-26 08:34:50,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:00 GMT)" (scheduled at 2025-09-26 08:34:50.692901+00:00) notificationworker stdout | 2025-09-26 08:34:50,694 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:34:50,695 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 34, 50, 694118), True, datetime.datetime(2025, 9, 26, 8, 34, 50, 694118), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:34:50,702 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:34:50,702 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:34:50,702 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:00 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:34:50,885 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:34:50,886 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:34:52.886914+00:00 (in 2.000817 seconds) exportactionlogsworker stdout | 2025-09-26 08:34:50,886 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:50 GMT)" (scheduled at 2025-09-26 08:34:50.885619+00:00) exportactionlogsworker stdout | 2025-09-26 08:34:50,886 [56] [DEBUG] [workers.queueworker] Getting work item from queue. exportactionlogsworker stdout | 2025-09-26 08:34:50,887 [56] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 34, 50, 886407), True, datetime.datetime(2025, 9, 26, 8, 34, 50, 886407), 0, 'exportactionlogs/%', 50, 1, 0]) exportactionlogsworker stdout | 2025-09-26 08:34:50,894 [56] [DEBUG] [workers.queueworker] No more work. exportactionlogsworker stdout | 2025-09-26 08:34:50,894 [56] [DEBUG] [data.database] Disconnecting from database. exportactionlogsworker stdout | 2025-09-26 08:34:50,894 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:50 GMT)" executed successfully blobuploadcleanupworker stdout | 2025-09-26 08:34:51,969 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} proxycacheblobworker stdout | 2025-09-26 08:34:52,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:34:52,478 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:02.477454+00:00 (in 9.999453 seconds) proxycacheblobworker stdout | 2025-09-26 08:34:52,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:02 GMT)" (scheduled at 2025-09-26 08:34:52.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:34:52,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:34:52,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 34, 52, 478440), True, datetime.datetime(2025, 9, 26, 8, 34, 52, 478440), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:34:52,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:34:52,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:34:52,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:02 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:34:52,887 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:34:52,887 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:50.885619+00:00 (in 57.998210 seconds) exportactionlogsworker stdout | 2025-09-26 08:34:52,887 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:52 GMT)" (scheduled at 2025-09-26 08:34:52.886914+00:00) exportactionlogsworker stdout | 2025-09-26 08:34:52,887 [56] [DEBUG] [workers.queueworker] Running watchdog. exportactionlogsworker stdout | 2025-09-26 08:34:52,887 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:52 GMT)" executed successfully globalpromstats stdout | 2025-09-26 08:34:55,047 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} proxycacheblobworker stdout | 2025-09-26 08:34:55,776 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} notificationworker stdout | 2025-09-26 08:34:56,867 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} repositoryactioncounter stdout | 2025-09-26 08:34:56,962 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} gcworker stdout | 2025-09-26 08:34:57,083 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:34:57,083 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:07.085344+00:00 (in 10.001575 seconds) gcworker stdout | 2025-09-26 08:34:57,083 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:27 GMT)" (scheduled at 2025-09-26 08:34:57.083344+00:00) gcworker stdout | 2025-09-26 08:34:57,084 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:34:57,084 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:27 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:34:57,150 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} manifestsubjectbackfillworker stdout | 2025-09-26 08:34:57,671 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} namespacegcworker stdout | 2025-09-26 08:34:59,791 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:34:59,791 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:08.793810+00:00 (in 9.002257 seconds) namespacegcworker stdout | 2025-09-26 08:34:59,791 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:59 GMT)" (scheduled at 2025-09-26 08:34:59.791127+00:00) namespacegcworker stdout | 2025-09-26 08:34:59,791 [66] [DEBUG] [workers.queueworker] Getting work item from queue. namespacegcworker stdout | 2025-09-26 08:34:59,792 [66] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 34, 59, 791867), True, datetime.datetime(2025, 9, 26, 8, 34, 59, 791867), 0, 'namespacegc/%', 50, 1, 0]) namespacegcworker stdout | 2025-09-26 08:34:59,799 [66] [DEBUG] [workers.queueworker] No more work. namespacegcworker stdout | 2025-09-26 08:34:59,799 [66] [DEBUG] [data.database] Disconnecting from database. namespacegcworker stdout | 2025-09-26 08:34:59,799 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:35:59 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:35:00,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:35:00,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:10.692901+00:00 (in 9.999328 seconds) notificationworker stdout | 2025-09-26 08:35:00,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:10 GMT)" (scheduled at 2025-09-26 08:35:00.692901+00:00) notificationworker stdout | 2025-09-26 08:35:00,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:35:00,700 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 35, 0, 693993), True, datetime.datetime(2025, 9, 26, 8, 35, 0, 693993), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:35:00,707 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:35:00,707 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:35:00,707 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:10 GMT)" executed successfully proxycacheblobworker stdout | 2025-09-26 08:35:02,478 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:35:02,478 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:12.477454+00:00 (in 9.998915 seconds) proxycacheblobworker stdout | 2025-09-26 08:35:02,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:12 GMT)" (scheduled at 2025-09-26 08:35:02.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:35:02,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:35:02,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 35, 2, 478915), True, datetime.datetime(2025, 9, 26, 8, 35, 2, 478915), 0, 'proxycacheblob/%', 50, 1, 0]) storagereplication stdout | 2025-09-26 08:35:02,483 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} proxycacheblobworker stdout | 2025-09-26 08:35:02,487 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:35:02,487 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:35:02,487 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:12 GMT)" executed successfully namespacegcworker stdout | 2025-09-26 08:35:02,874 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-web stdout | 2025-09-26 08:35:03,200 [247] [DEBUG] [app] Starting request: urn:request:4e81c795-5047-443c-bb61-558392cef9aa (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:35:03,201 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:35:03,203 [251] [DEBUG] [app] Starting request: urn:request:2d2fc4d1-e0c0-4ce0-afe2-655deb02bd8e (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:35:03,203 [251] [DEBUG] [app] Ending request: urn:request:2d2fc4d1-e0c0-4ce0-afe2-655deb02bd8e (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:2d2fc4d1-e0c0-4ce0-afe2-655deb02bd8e', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:35:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-registry stdout | 2025-09-26 08:35:03,204 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:35:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:35:03,204 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:35:03,205 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:35:03,207 [247] [DEBUG] [app] Starting request: urn:request:1437c74e-13a8-486a-aca1-7f617ad4e611 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:35:03,207 [247] [DEBUG] [app] Ending request: urn:request:1437c74e-13a8-486a-aca1-7f617ad4e611 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:1437c74e-13a8-486a-aca1-7f617ad4e611', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:35:03,207 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:35:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:35:03,207 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:35:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:35:03,208 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:35:03,208 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:35:03,208 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:35:03,212 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:35:03,212 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:35:03,217 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:35:03,218 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:35:03,219 [247] [DEBUG] [app] Ending request: urn:request:4e81c795-5047-443c-bb61-558392cef9aa (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:4e81c795-5047-443c-bb61-558392cef9aa', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:35:03,219 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:35:03,219 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:35:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:35:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.021 118 0.021) gunicorn-web stdout | 2025-09-26 08:35:03,261 [247] [DEBUG] [app] Starting request: urn:request:88394f09-9097-4e5b-9651-af3554f2c412 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:35:03,263 [251] [DEBUG] [app] Starting request: urn:request:79f2f9c2-b821-4972-bd38-91fa131cfdaa (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:35:03,263 [251] [DEBUG] [app] Ending request: urn:request:79f2f9c2-b821-4972-bd38-91fa131cfdaa (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:79f2f9c2-b821-4972-bd38-91fa131cfdaa', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:35:03,264 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:35:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:35:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:35:03,264 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:35:03,265 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:35:03,267 [250] [DEBUG] [app] Starting request: urn:request:0f5ff7c6-6c29-449c-ab7d-a25fe9a2bc79 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:35:03,268 [250] [DEBUG] [app] Ending request: urn:request:0f5ff7c6-6c29-449c-ab7d-a25fe9a2bc79 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:0f5ff7c6-6c29-449c-ab7d-a25fe9a2bc79', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:35:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:35:03,268 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:35:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:35:03,269 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:35:03,269 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:35:03,269 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:35:03,269 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:35:03,273 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:35:03,273 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:35:03,278 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:35:03,279 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:35:03,279 [247] [DEBUG] [app] Ending request: urn:request:88394f09-9097-4e5b-9651-af3554f2c412 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:88394f09-9097-4e5b-9651-af3554f2c412', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:35:03,279 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:35:03,280 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:35:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:35:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.019 118 0.018) autopruneworker stdout | 2025-09-26 08:35:04,262 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} expiredappspecifictokenworker stdout | 2025-09-26 08:35:04,345 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} manifestbackfillworker stdout | 2025-09-26 08:35:04,561 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} builder stdout | 2025-09-26 08:35:04,947 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} logrotateworker stdout | 2025-09-26 08:35:06,263 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gcworker stdout | 2025-09-26 08:35:07,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:35:07,085 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:27.083344+00:00 (in 19.997567 seconds) gcworker stdout | 2025-09-26 08:35:07,085 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:37 GMT)" (scheduled at 2025-09-26 08:35:07.085344+00:00) gcworker stdout | 2025-09-26 08:35:07,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gcworker stdout | 2025-09-26 08:35:07,092 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875407091, None, 1, 0]) gcworker stdout | 2025-09-26 08:35:07,094 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:35:07,094 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:37 GMT)" executed successfully securityworker stdout | 2025-09-26 08:35:07,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:35:07,684 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:11.684816+00:00 (in 4.000766 seconds) securityworker stdout | 2025-09-26 08:35:07,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:37 GMT)" (scheduled at 2025-09-26 08:35:07.683505+00:00) securityworker stdout | 2025-09-26 08:35:07,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:35:07,684 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:35:07,689 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:35:07,691 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:35:07,701 [86] [DEBUG] [peewee] ('SELECT Min("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:35:07,703 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:35:07,703 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:37 GMT)" executed successfully namespacegcworker stdout | 2025-09-26 08:35:08,794 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:35:08,794 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:59.791127+00:00 (in 50.996632 seconds) namespacegcworker stdout | 2025-09-26 08:35:08,794 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:08 GMT)" (scheduled at 2025-09-26 08:35:08.793810+00:00) namespacegcworker stdout | 2025-09-26 08:35:08,794 [66] [DEBUG] [workers.queueworker] Running watchdog. namespacegcworker stdout | 2025-09-26 08:35:08,794 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:08 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:35:09,599 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:35:09,607 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:35:09,648 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:35:09,654 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:35:09,657 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gcworker stdout | 2025-09-26 08:35:09,763 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} securityscanningnotificationworker stdout | 2025-09-26 08:35:09,948 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} queuecleanupworker stdout | 2025-09-26 08:35:10,155 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} gunicorn-secscan stdout | 2025-09-26 08:35:10,314 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:35:10,320 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} gunicorn-secscan stdout | 2025-09-26 08:35:10,324 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} securityscanningnotificationworker stdout | 2025-09-26 08:35:10,584 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:35:10,584 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:28.587130+00:00 (in 18.002229 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:35:10,585 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:10 GMT)" (scheduled at 2025-09-26 08:35:10.584403+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:35:10,585 [82] [DEBUG] [workers.queueworker] Getting work item from queue. securityscanningnotificationworker stdout | 2025-09-26 08:35:10,585 [82] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 35, 10, 585257), True, datetime.datetime(2025, 9, 26, 8, 35, 10, 585257), 0, 'secscanv4/%', 50, 1, 0]) securityscanningnotificationworker stdout | 2025-09-26 08:35:10,592 [82] [DEBUG] [workers.queueworker] No more work. securityscanningnotificationworker stdout | 2025-09-26 08:35:10,592 [82] [DEBUG] [data.database] Disconnecting from database. securityscanningnotificationworker stdout | 2025-09-26 08:35:10,592 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:10 GMT)" executed successfully autopruneworker stdout | 2025-09-26 08:35:10,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:35:10,598 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:40.598100+00:00 (in 29.999562 seconds) autopruneworker stdout | 2025-09-26 08:35:10,598 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:40 GMT)" (scheduled at 2025-09-26 08:35:10.598100+00:00) autopruneworker stdout | 2025-09-26 08:35:10,603 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758872110602, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:35:10,606 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:35:10,606 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:35:10,606 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:40 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:35:10,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:35:10,694 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:20.692901+00:00 (in 9.998781 seconds) notificationworker stdout | 2025-09-26 08:35:10,694 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:20 GMT)" (scheduled at 2025-09-26 08:35:10.692901+00:00) notificationworker stdout | 2025-09-26 08:35:10,694 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:35:10,695 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 35, 10, 694463), True, datetime.datetime(2025, 9, 26, 8, 35, 10, 694463), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:35:10,702 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:35:10,702 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:35:10,702 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:20 GMT)" executed successfully chunkcleanupworker stdout | 2025-09-26 08:35:10,975 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} securityworker stdout | 2025-09-26 08:35:11,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:35:11,685 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:37.683505+00:00 (in 25.997657 seconds) securityworker stdout | 2025-09-26 08:35:11,686 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:41 GMT)" (scheduled at 2025-09-26 08:35:11.684816+00:00) securityworker stdout | 2025-09-26 08:35:11,686 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:35:11,686 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:35:11,688 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:35:11,691 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:35:11,697 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:35:11,697 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:35:11,697 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:35:11,697 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:35:11,698 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 2]) securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:35:11,700 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:35:11,700 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:35:11,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:35:11,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:35:11,700 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:35:11,700 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:35:11,700 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:35:11,700 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:35:11,700 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:35:11,700 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:35:11,700 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:35:11,701 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 30, 11, 690920), 1, 2]) securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:35:11,702 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:35:11,702 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:35:11,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:35:11,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:35:11,702 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:35:11,702 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:35:11,702 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:35:11,702 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:35:11,702 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:35:11,702 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:35:11,702 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:35:11,703 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 30, 11, 690920), 1, 2]) securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:35:11,705 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:35:11,705 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:35:11,705 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:35:11,705 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:35:11,705 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:35:11,705 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:35:11,705 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:35:11,705 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:35:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:35:11,705 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:41 GMT)" executed successfully repositorygcworker stdout | 2025-09-26 08:35:11,961 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} proxycacheblobworker stdout | 2025-09-26 08:35:12,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:35:12,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:22.477454+00:00 (in 9.999532 seconds) proxycacheblobworker stdout | 2025-09-26 08:35:12,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:22 GMT)" (scheduled at 2025-09-26 08:35:12.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:35:12,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:35:12,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 35, 12, 478251), True, datetime.datetime(2025, 9, 26, 8, 35, 12, 478251), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:35:12,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:35:12,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:35:12,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:22 GMT)" executed successfully servicekey stdout | 2025-09-26 08:35:12,577 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:35:12,656 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} gunicorn-registry stdout | 2025-09-26 08:35:14,068 [59] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '59'} gunicorn-registry stdout | 2025-09-26 08:35:14,073 [257] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '257'} gunicorn-registry stdout | 2025-09-26 08:35:14,077 [253] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '253'} gunicorn-registry stdout | 2025-09-26 08:35:14,085 [255] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '255'} gunicorn-registry stdout | 2025-09-26 08:35:14,088 [256] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '256'} gunicorn-registry stdout | 2025-09-26 08:35:14,097 [258] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '258'} gunicorn-registry stdout | 2025-09-26 08:35:14,111 [251] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '251'} gunicorn-registry stdout | 2025-09-26 08:35:14,114 [252] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '252'} gunicorn-registry stdout | 2025-09-26 08:35:14,127 [254] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '254'} buildlogsarchiver stdout | 2025-09-26 08:35:15,481 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} buildlogsarchiver stdout | 2025-09-26 08:35:17,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:35:17,375 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:47.375102+00:00 (in 29.999562 seconds) buildlogsarchiver stdout | 2025-09-26 08:35:17,375 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:47 GMT)" (scheduled at 2025-09-26 08:35:17.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:35:17,376 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 35, 17, 375840), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:35:17,383 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:35:17,383 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:35:17,383 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:47 GMT)" executed successfully manifestsubjectbackfillworker stdout | 2025-09-26 08:35:17,985 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:35:17,986 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:33.984400+00:00 (in 15.998199 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:35:17,986 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:17 GMT)" (scheduled at 2025-09-26 08:35:17.985743+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:35:17,986 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."artifact_type_backfilled" = %s) OR ("t1"."artifact_type_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:35:17,993 [64] [DEBUG] [__main__] Manifest artifact_type backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:35:17,993 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:35:17,993 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:17 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:35:18,199 [247] [DEBUG] [app] Starting request: urn:request:196385bd-5013-4072-b425-1ad2d51b2b99 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:35:18,200 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:35:18,202 [251] [DEBUG] [app] Starting request: urn:request:8e7eec4d-6c7f-4188-80c5-dec4609b778a (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:35:18,207 [251] [DEBUG] [app] Ending request: urn:request:8e7eec4d-6c7f-4188-80c5-dec4609b778a (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:8e7eec4d-6c7f-4188-80c5-dec4609b778a', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:35:18,208 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:35:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:35:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.007 162 0.007) gunicorn-web stdout | 2025-09-26 08:35:18,208 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:35:18,209 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:35:18,213 [250] [DEBUG] [app] Starting request: urn:request:a97bdc01-ce2f-460e-9746-ee2ecd2ffde9 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:35:18,213 [250] [DEBUG] [app] Ending request: urn:request:a97bdc01-ce2f-460e-9746-ee2ecd2ffde9 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:a97bdc01-ce2f-460e-9746-ee2ecd2ffde9', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:35:18,214 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:35:18 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:35:18,214 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:35:18 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.002) gunicorn-web stdout | 2025-09-26 08:35:18,214 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:35:18,214 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:35:18,214 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:35:18,219 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:35:18,219 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:35:18,223 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:35:18,224 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:35:18,224 [247] [DEBUG] [app] Ending request: urn:request:196385bd-5013-4072-b425-1ad2d51b2b99 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:196385bd-5013-4072-b425-1ad2d51b2b99', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:35:18,224 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:35:18,226 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:35:18 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:35:18 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.028 118 0.028) gunicorn-web stdout | 2025-09-26 08:35:18,261 [247] [DEBUG] [app] Starting request: urn:request:4f44e0d8-b464-48bb-9f30-f07b4446f8fa (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:35:18,262 [251] [DEBUG] [app] Starting request: urn:request:d1901bc1-650e-42db-b155-325f14b0f7c7 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:35:18,263 [251] [DEBUG] [app] Ending request: urn:request:d1901bc1-650e-42db-b155-325f14b0f7c7 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:d1901bc1-650e-42db-b155-325f14b0f7c7', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:35:18,263 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:35:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:35:18,263 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:35:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:35:18,264 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:35:18,266 [249] [DEBUG] [app] Starting request: urn:request:f24288ef-075f-49a4-b491-daa14a1c5edd (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:35:18,266 [249] [DEBUG] [app] Ending request: urn:request:f24288ef-075f-49a4-b491-daa14a1c5edd (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:f24288ef-075f-49a4-b491-daa14a1c5edd', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:35:18 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:35:18,266 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:35:18 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:35:18,266 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:35:18,267 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:35:18,267 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:35:18,267 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:35:18,271 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:35:18,271 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:35:18,276 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:35:18,277 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:35:18,277 [247] [DEBUG] [app] Ending request: urn:request:4f44e0d8-b464-48bb-9f30-f07b4446f8fa (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:4f44e0d8-b464-48bb-9f30-f07b4446f8fa', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:35:18,278 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:35:18,278 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:35:18 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:35:18 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.018 118 0.018) securityworker stdout | 2025-09-26 08:35:18,685 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} repositorygcworker stdout | 2025-09-26 08:35:19,075 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:35:19,076 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:28.077240+00:00 (in 9.001138 seconds) repositorygcworker stdout | 2025-09-26 08:35:19,076 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:19 GMT)" (scheduled at 2025-09-26 08:35:19.075668+00:00) repositorygcworker stdout | 2025-09-26 08:35:19,076 [81] [DEBUG] [workers.queueworker] Getting work item from queue. repositorygcworker stdout | 2025-09-26 08:35:19,077 [81] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 35, 19, 76371), True, datetime.datetime(2025, 9, 26, 8, 35, 19, 76371), 0, 'repositorygc/%', 50, 1, 0]) repositorygcworker stdout | 2025-09-26 08:35:19,084 [81] [DEBUG] [workers.queueworker] No more work. repositorygcworker stdout | 2025-09-26 08:35:19,084 [81] [DEBUG] [data.database] Disconnecting from database. repositorygcworker stdout | 2025-09-26 08:35:19,084 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:19 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:35:20,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:35:20,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:30.692901+00:00 (in 9.999190 seconds) notificationworker stdout | 2025-09-26 08:35:20,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:30 GMT)" (scheduled at 2025-09-26 08:35:20.692901+00:00) notificationworker stdout | 2025-09-26 08:35:20,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:35:20,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 35, 20, 694039), True, datetime.datetime(2025, 9, 26, 8, 35, 20, 694039), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:35:20,702 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:35:20,702 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:35:20,702 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:30 GMT)" executed successfully blobuploadcleanupworker stdout | 2025-09-26 08:35:21,986 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} proxycacheblobworker stdout | 2025-09-26 08:35:22,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:35:22,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:26.483749+00:00 (in 4.005791 seconds) proxycacheblobworker stdout | 2025-09-26 08:35:22,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:32 GMT)" (scheduled at 2025-09-26 08:35:22.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:35:22,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:35:22,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 35, 22, 478649), True, datetime.datetime(2025, 9, 26, 8, 35, 22, 478649), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:35:22,487 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:35:22,487 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:35:22,487 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:32 GMT)" executed successfully globalpromstats stdout | 2025-09-26 08:35:25,064 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} proxycacheblobworker stdout | 2025-09-26 08:35:25,793 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} proxycacheblobworker stdout | 2025-09-26 08:35:26,484 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:35:26,484 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:32.477454+00:00 (in 5.993150 seconds) proxycacheblobworker stdout | 2025-09-26 08:35:26,484 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:26 GMT)" (scheduled at 2025-09-26 08:35:26.483749+00:00) proxycacheblobworker stdout | 2025-09-26 08:35:26,484 [69] [DEBUG] [workers.queueworker] Running watchdog. proxycacheblobworker stdout | 2025-09-26 08:35:26,484 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:26 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:35:26,883 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} repositoryactioncounter stdout | 2025-09-26 08:35:26,978 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} gcworker stdout | 2025-09-26 08:35:27,083 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:35:27,084 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:37.085344+00:00 (in 10.001255 seconds) gcworker stdout | 2025-09-26 08:35:27,084 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:57 GMT)" (scheduled at 2025-09-26 08:35:27.083344+00:00) gcworker stdout | 2025-09-26 08:35:27,084 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:35:27,084 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:35:57 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:35:27,166 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} manifestsubjectbackfillworker stdout | 2025-09-26 08:35:27,687 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} repositorygcworker stdout | 2025-09-26 08:35:28,077 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:35:28,077 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:19.075668+00:00 (in 50.997985 seconds) repositorygcworker stdout | 2025-09-26 08:35:28,077 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:28 GMT)" (scheduled at 2025-09-26 08:35:28.077240+00:00) repositorygcworker stdout | 2025-09-26 08:35:28,077 [81] [DEBUG] [workers.queueworker] Running watchdog. repositorygcworker stdout | 2025-09-26 08:35:28,077 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:28 GMT)" executed successfully securityscanningnotificationworker stdout | 2025-09-26 08:35:28,587 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:35:28,587 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:10.584403+00:00 (in 41.996798 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:35:28,587 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:28 GMT)" (scheduled at 2025-09-26 08:35:28.587130+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:35:28,588 [82] [DEBUG] [workers.queueworker] Running watchdog. securityscanningnotificationworker stdout | 2025-09-26 08:35:28,588 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:28 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:35:30,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:35:30,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:37.771811+00:00 (in 7.078425 seconds) notificationworker stdout | 2025-09-26 08:35:30,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:40 GMT)" (scheduled at 2025-09-26 08:35:30.692901+00:00) notificationworker stdout | 2025-09-26 08:35:30,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:35:30,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 35, 30, 693733), True, datetime.datetime(2025, 9, 26, 8, 35, 30, 693733), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:35:30,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:35:30,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:35:30,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:40 GMT)" executed successfully proxycacheblobworker stdout | 2025-09-26 08:35:32,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:35:32,478 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:42.477454+00:00 (in 9.999469 seconds) proxycacheblobworker stdout | 2025-09-26 08:35:32,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:42 GMT)" (scheduled at 2025-09-26 08:35:32.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:35:32,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:35:32,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 35, 32, 478385), True, datetime.datetime(2025, 9, 26, 8, 35, 32, 478385), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:35:32,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:35:32,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:35:32,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:42 GMT)" executed successfully storagereplication stdout | 2025-09-26 08:35:32,499 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} namespacegcworker stdout | 2025-09-26 08:35:32,890 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-web stdout | 2025-09-26 08:35:33,200 [247] [DEBUG] [app] Starting request: urn:request:871e060e-f79d-4c89-9aeb-6c26ab5ef34f (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:35:33,201 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:35:33,203 [258] [DEBUG] [app] Starting request: urn:request:d40747cd-fee9-4063-a904-882c2b2d0488 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:35:33,203 [258] [DEBUG] [app] Ending request: urn:request:d40747cd-fee9-4063-a904-882c2b2d0488 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:d40747cd-fee9-4063-a904-882c2b2d0488', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:35:33,203 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:35:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:35:33,203 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:35:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:35:33,204 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:35:33,206 [250] [DEBUG] [app] Starting request: urn:request:a6b2f03c-477b-49d9-a4f3-07275fccdb35 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:35:33,207 [250] [DEBUG] [app] Ending request: urn:request:a6b2f03c-477b-49d9-a4f3-07275fccdb35 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:a6b2f03c-477b-49d9-a4f3-07275fccdb35', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:35:33,207 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:35:33 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:35:33,207 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:35:33 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.002) gunicorn-web stdout | 2025-09-26 08:35:33,207 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:35:33,207 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:35:33,207 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:35:33,212 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:35:33,212 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:35:33,217 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:35:33,218 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:35:33,218 [247] [DEBUG] [app] Ending request: urn:request:871e060e-f79d-4c89-9aeb-6c26ab5ef34f (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:871e060e-f79d-4c89-9aeb-6c26ab5ef34f', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:35:33,218 [247] [DEBUG] [data.database] Disconnecting from database. nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:35:33 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.021 118 0.021) gunicorn-web stdout | 2025-09-26 08:35:33,219 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:35:33 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" gunicorn-web stdout | 2025-09-26 08:35:33,261 [247] [DEBUG] [app] Starting request: urn:request:4b3e74bc-743f-4ad2-8782-2b9ad578f512 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:35:33,263 [258] [DEBUG] [app] Starting request: urn:request:b8418333-f4be-475a-b065-0455a3476f10 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:35:33,263 [258] [DEBUG] [app] Ending request: urn:request:b8418333-f4be-475a-b065-0455a3476f10 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:b8418333-f4be-475a-b065-0455a3476f10', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:35:33,263 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:35:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:35:33,264 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:35:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:35:33,264 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:35:33,266 [248] [DEBUG] [app] Starting request: urn:request:b855ad06-de5c-4622-8ffe-8197803c238a (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:35:33,266 [248] [DEBUG] [app] Ending request: urn:request:b855ad06-de5c-4622-8ffe-8197803c238a (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:b855ad06-de5c-4622-8ffe-8197803c238a', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:35:33,267 [248] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:35:33 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:35:33,267 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:35:33 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.002) gunicorn-web stdout | 2025-09-26 08:35:33,267 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:35:33,267 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:35:33,267 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:35:33,272 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:35:33,272 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:35:33,276 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:35:33,278 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:35:33,278 [247] [DEBUG] [app] Ending request: urn:request:4b3e74bc-743f-4ad2-8782-2b9ad578f512 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:4b3e74bc-743f-4ad2-8782-2b9ad578f512', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:35:33,279 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:35:33,279 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:35:33 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:35:33 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.019 118 0.019) manifestsubjectbackfillworker stdout | 2025-09-26 08:35:33,985 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:35:33,985 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:17.985743+00:00 (in 44.000213 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:35:33,985 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:33 GMT)" (scheduled at 2025-09-26 08:35:33.984400+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:35:33,986 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."subject_backfilled" = %s) OR ("t1"."subject_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:35:33,992 [64] [DEBUG] [__main__] Manifest subject backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:35:33,992 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:35:33,992 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:33 GMT)" executed successfully autopruneworker stdout | 2025-09-26 08:35:34,278 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} expiredappspecifictokenworker stdout | 2025-09-26 08:35:34,362 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} manifestbackfillworker stdout | 2025-09-26 08:35:34,578 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} builder stdout | 2025-09-26 08:35:34,964 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} logrotateworker stdout | 2025-09-26 08:35:36,281 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gcworker stdout | 2025-09-26 08:35:37,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:35:37,085 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:57.083344+00:00 (in 19.997554 seconds) gcworker stdout | 2025-09-26 08:35:37,086 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:07 GMT)" (scheduled at 2025-09-26 08:35:37.085344+00:00) gcworker stdout | 2025-09-26 08:35:37,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gcworker stdout | 2025-09-26 08:35:37,092 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875437092, None, 1, 0]) gcworker stdout | 2025-09-26 08:35:37,094 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:35:37,094 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:07 GMT)" executed successfully securityworker stdout | 2025-09-26 08:35:37,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:35:37,684 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:41.684816+00:00 (in 4.000830 seconds) securityworker stdout | 2025-09-26 08:35:37,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:07 GMT)" (scheduled at 2025-09-26 08:35:37.683505+00:00) securityworker stdout | 2025-09-26 08:35:37,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:35:37,684 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:35:37,688 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:35:37,690 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:35:37,695 [86] [DEBUG] [peewee] ('SELECT Min("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:35:37,696 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:35:37,696 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:07 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:35:37,772 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:35:37,772 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:40.692901+00:00 (in 2.920593 seconds) notificationworker stdout | 2025-09-26 08:35:37,772 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:37 GMT)" (scheduled at 2025-09-26 08:35:37.771811+00:00) notificationworker stdout | 2025-09-26 08:35:37,772 [68] [DEBUG] [workers.queueworker] Running watchdog. notificationworker stdout | 2025-09-26 08:35:37,772 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:37 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:35:39,615 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:35:39,625 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:35:39,667 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:35:39,675 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:35:39,678 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gcworker stdout | 2025-09-26 08:35:39,778 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} securityscanningnotificationworker stdout | 2025-09-26 08:35:39,963 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} queuecleanupworker stdout | 2025-09-26 08:35:40,172 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} gunicorn-secscan stdout | 2025-09-26 08:35:40,330 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:35:40,337 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} gunicorn-secscan stdout | 2025-09-26 08:35:40,342 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} autopruneworker stdout | 2025-09-26 08:35:40,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:35:40,598 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:10.598100+00:00 (in 29.999564 seconds) autopruneworker stdout | 2025-09-26 08:35:40,598 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:10 GMT)" (scheduled at 2025-09-26 08:35:40.598100+00:00) autopruneworker stdout | 2025-09-26 08:35:40,604 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758872140603, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:35:40,607 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:35:40,607 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:35:40,607 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:10 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:35:40,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:35:40,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:41.771359+00:00 (in 1.077996 seconds) notificationworker stdout | 2025-09-26 08:35:40,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:50 GMT)" (scheduled at 2025-09-26 08:35:40.692901+00:00) notificationworker stdout | 2025-09-26 08:35:40,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:35:40,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 35, 40, 693717), True, datetime.datetime(2025, 9, 26, 8, 35, 40, 693717), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:35:40,700 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:35:40,700 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:35:40,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:50 GMT)" executed successfully chunkcleanupworker stdout | 2025-09-26 08:35:40,992 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} securityworker stdout | 2025-09-26 08:35:41,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:35:41,685 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:07.683505+00:00 (in 25.998136 seconds) securityworker stdout | 2025-09-26 08:35:41,685 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:11 GMT)" (scheduled at 2025-09-26 08:35:41.684816+00:00) securityworker stdout | 2025-09-26 08:35:41,685 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:35:41,685 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:35:41,688 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:35:41,690 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:35:41,696 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:35:41,696 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:35:41,696 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:35:41,696 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:35:41,697 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 2]) securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:35:41,699 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:35:41,699 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:35:41,699 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:35:41,699 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:35:41,699 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:35:41,699 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:35:41,699 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:35:41,699 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:35:41,699 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:35:41,699 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:35:41,699 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:35:41,700 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 30, 41, 690337), 1, 2]) securityworker stdout | 2025-09-26 08:35:41,701 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:35:41,701 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:35:41,701 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:35:41,701 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:35:41,701 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:35:41,701 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:35:41,701 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:35:41,701 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:35:41,701 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:35:41,701 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:35:41,701 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:35:41,702 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 30, 41, 690337), 1, 2]) securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:35:41,703 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:35:41,703 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:35:41,703 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:35:41,703 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:35:41,703 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:35:41,703 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:35:41,703 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:35:41,703 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:35:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:35:41,704 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:11 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:35:41,771 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:35:41,771 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:50.692901+00:00 (in 8.921034 seconds) notificationworker stdout | 2025-09-26 08:35:41,772 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:40:41 GMT)" (scheduled at 2025-09-26 08:35:41.771359+00:00) notificationworker stdout | 2025-09-26 08:35:41,772 [68] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [False, datetime.datetime(2025, 9, 26, 8, 35, 41, 772238), 'notification/%']) notificationworker stdout | 2025-09-26 08:35:41,779 [68] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 35, 41, 772238), True, datetime.datetime(2025, 9, 26, 8, 35, 41, 772238), 0, 'notification/%']) notificationworker stdout | 2025-09-26 08:35:41,781 [68] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) AND NOT ("t1"."queue_name" IN (SELECT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s)))))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 35, 41, 772238), True, datetime.datetime(2025, 9, 26, 8, 35, 41, 772238), 0, 'notification/%', False, datetime.datetime(2025, 9, 26, 8, 35, 41, 772238), 'notification/%']) notificationworker stdout | 2025-09-26 08:35:41,782 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:35:41,782 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:40:41 GMT)" executed successfully repositorygcworker stdout | 2025-09-26 08:35:41,978 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} proxycacheblobworker stdout | 2025-09-26 08:35:42,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:35:42,478 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:52.477454+00:00 (in 9.999444 seconds) proxycacheblobworker stdout | 2025-09-26 08:35:42,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:52 GMT)" (scheduled at 2025-09-26 08:35:42.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:35:42,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:35:42,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 35, 42, 478408), True, datetime.datetime(2025, 9, 26, 8, 35, 42, 478408), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:35:42,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:35:42,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:35:42,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:35:52 GMT)" executed successfully servicekey stdout | 2025-09-26 08:35:42,594 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:35:42,673 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} gunicorn-registry stdout | 2025-09-26 08:35:44,090 [59] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '59'} gunicorn-registry stdout | 2025-09-26 08:35:44,094 [257] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '257'} gunicorn-registry stdout | 2025-09-26 08:35:44,101 [253] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '253'} gunicorn-registry stdout | 2025-09-26 08:35:44,106 [255] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '255'} gunicorn-registry stdout | 2025-09-26 08:35:44,110 [256] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '256'} gunicorn-registry stdout | 2025-09-26 08:35:44,114 [258] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '258'} gunicorn-registry stdout | 2025-09-26 08:35:44,129 [251] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '251'} gunicorn-registry stdout | 2025-09-26 08:35:44,135 [252] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '252'} gunicorn-registry stdout | 2025-09-26 08:35:44,149 [254] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '254'} buildlogsarchiver stdout | 2025-09-26 08:35:45,497 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} buildlogsarchiver stdout | 2025-09-26 08:35:47,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:35:47,375 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:17.375102+00:00 (in 29.999568 seconds) buildlogsarchiver stdout | 2025-09-26 08:35:47,375 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:17 GMT)" (scheduled at 2025-09-26 08:35:47.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:35:47,376 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 35, 47, 375832), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:35:47,383 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:35:47,383 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:35:47,383 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:17 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:35:48,199 [247] [DEBUG] [app] Starting request: urn:request:0bab2a9a-cb84-4231-a30c-3b784d4cbc53 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:35:48,203 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:35:48,205 [251] [DEBUG] [app] Starting request: urn:request:ab1d4b53-b55b-4418-ba2a-d51e506873e9 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:35:48,206 [251] [DEBUG] [app] Ending request: urn:request:ab1d4b53-b55b-4418-ba2a-d51e506873e9 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:ab1d4b53-b55b-4418-ba2a-d51e506873e9', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:35:48,206 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:35:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:35:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.002) gunicorn-web stdout | 2025-09-26 08:35:48,207 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:35:48,208 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:35:48,209 [247] [DEBUG] [app] Starting request: urn:request:088e3cd6-4956-4694-9c24-ba5e4bf38a05 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:35:48,210 [247] [DEBUG] [app] Ending request: urn:request:088e3cd6-4956-4694-9c24-ba5e4bf38a05 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:088e3cd6-4956-4694-9c24-ba5e4bf38a05', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:35:48,210 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:35:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:35:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:35:48,210 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:35:48,211 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:35:48,211 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:35:48,211 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:35:48,215 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:35:48,215 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:35:48,220 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:35:48,222 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:35:48,222 [247] [DEBUG] [app] Ending request: urn:request:0bab2a9a-cb84-4231-a30c-3b784d4cbc53 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:0bab2a9a-cb84-4231-a30c-3b784d4cbc53', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:35:48,223 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:35:48,223 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:35:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:35:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.024 118 0.024) gunicorn-web stdout | 2025-09-26 08:35:48,261 [247] [DEBUG] [app] Starting request: urn:request:e63a9153-2e4d-426a-8d36-b6b60e8a7a15 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:35:48,263 [251] [DEBUG] [app] Starting request: urn:request:0acabb58-b3db-441d-af8c-edd7cdd01adb (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:35:48,263 [251] [DEBUG] [app] Ending request: urn:request:0acabb58-b3db-441d-af8c-edd7cdd01adb (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:0acabb58-b3db-441d-af8c-edd7cdd01adb', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:35:48,264 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:35:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:35:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:35:48,264 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:35:48,265 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:35:48,266 [247] [DEBUG] [app] Starting request: urn:request:0565c3e1-1d72-4948-9eb8-2de23a4c4c4d (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:35:48,266 [247] [DEBUG] [app] Ending request: urn:request:0565c3e1-1d72-4948-9eb8-2de23a4c4c4d (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:0565c3e1-1d72-4948-9eb8-2de23a4c4c4d', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:35:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:35:48,267 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:35:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:35:48,267 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:35:48,267 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:35:48,267 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:35:48,267 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:35:48,271 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:35:48,272 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:35:48,276 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:35:48,277 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:35:48,277 [247] [DEBUG] [app] Ending request: urn:request:e63a9153-2e4d-426a-8d36-b6b60e8a7a15 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:e63a9153-2e4d-426a-8d36-b6b60e8a7a15', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:35:48,277 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:35:48,278 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:35:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:35:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.018 118 0.018) securityworker stdout | 2025-09-26 08:35:48,700 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} notificationworker stdout | 2025-09-26 08:35:50,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:35:50,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:00.692901+00:00 (in 9.999416 seconds) notificationworker stdout | 2025-09-26 08:35:50,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:00 GMT)" (scheduled at 2025-09-26 08:35:50.692901+00:00) notificationworker stdout | 2025-09-26 08:35:50,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:35:50,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 35, 50, 693859), True, datetime.datetime(2025, 9, 26, 8, 35, 50, 693859), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:35:50,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:35:50,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:35:50,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:00 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:35:50,885 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:35:50,886 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:35:52.886914+00:00 (in 2.000857 seconds) exportactionlogsworker stdout | 2025-09-26 08:35:50,886 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:50 GMT)" (scheduled at 2025-09-26 08:35:50.885619+00:00) exportactionlogsworker stdout | 2025-09-26 08:35:50,886 [56] [DEBUG] [workers.queueworker] Getting work item from queue. exportactionlogsworker stdout | 2025-09-26 08:35:50,887 [56] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 35, 50, 886379), True, datetime.datetime(2025, 9, 26, 8, 35, 50, 886379), 0, 'exportactionlogs/%', 50, 1, 0]) exportactionlogsworker stdout | 2025-09-26 08:35:50,894 [56] [DEBUG] [workers.queueworker] No more work. exportactionlogsworker stdout | 2025-09-26 08:35:50,894 [56] [DEBUG] [data.database] Disconnecting from database. exportactionlogsworker stdout | 2025-09-26 08:35:50,894 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:50 GMT)" executed successfully blobuploadcleanupworker stdout | 2025-09-26 08:35:52,002 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} proxycacheblobworker stdout | 2025-09-26 08:35:52,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:35:52,478 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:02.477454+00:00 (in 9.999439 seconds) proxycacheblobworker stdout | 2025-09-26 08:35:52,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:02 GMT)" (scheduled at 2025-09-26 08:35:52.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:35:52,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:35:52,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 35, 52, 478481), True, datetime.datetime(2025, 9, 26, 8, 35, 52, 478481), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:35:52,487 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:35:52,487 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:35:52,487 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:02 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:35:52,887 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:35:52,887 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:50.885619+00:00 (in 57.998258 seconds) exportactionlogsworker stdout | 2025-09-26 08:35:52,887 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:52 GMT)" (scheduled at 2025-09-26 08:35:52.886914+00:00) exportactionlogsworker stdout | 2025-09-26 08:35:52,887 [56] [DEBUG] [workers.queueworker] Running watchdog. exportactionlogsworker stdout | 2025-09-26 08:35:52,887 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:52 GMT)" executed successfully globalpromstats stdout | 2025-09-26 08:35:55,080 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} proxycacheblobworker stdout | 2025-09-26 08:35:55,809 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} notificationworker stdout | 2025-09-26 08:35:56,900 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} repositoryactioncounter stdout | 2025-09-26 08:35:56,993 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} gcworker stdout | 2025-09-26 08:35:57,083 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:35:57,083 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:07.085344+00:00 (in 10.001602 seconds) gcworker stdout | 2025-09-26 08:35:57,084 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:27 GMT)" (scheduled at 2025-09-26 08:35:57.083344+00:00) gcworker stdout | 2025-09-26 08:35:57,084 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:35:57,084 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:27 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:35:57,182 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} manifestsubjectbackfillworker stdout | 2025-09-26 08:35:57,703 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} namespacegcworker stdout | 2025-09-26 08:35:59,791 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:35:59,791 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:08.793810+00:00 (in 9.002128 seconds) namespacegcworker stdout | 2025-09-26 08:35:59,791 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:59 GMT)" (scheduled at 2025-09-26 08:35:59.791127+00:00) namespacegcworker stdout | 2025-09-26 08:35:59,791 [66] [DEBUG] [workers.queueworker] Getting work item from queue. namespacegcworker stdout | 2025-09-26 08:35:59,792 [66] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 35, 59, 792008), True, datetime.datetime(2025, 9, 26, 8, 35, 59, 792008), 0, 'namespacegc/%', 50, 1, 0]) namespacegcworker stdout | 2025-09-26 08:35:59,802 [66] [DEBUG] [workers.queueworker] No more work. namespacegcworker stdout | 2025-09-26 08:35:59,802 [66] [DEBUG] [data.database] Disconnecting from database. namespacegcworker stdout | 2025-09-26 08:35:59,802 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:36:59 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:36:00,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:36:00,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:10.692901+00:00 (in 9.999543 seconds) notificationworker stdout | 2025-09-26 08:36:00,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:10 GMT)" (scheduled at 2025-09-26 08:36:00.692901+00:00) notificationworker stdout | 2025-09-26 08:36:00,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:36:00,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 36, 0, 693681), True, datetime.datetime(2025, 9, 26, 8, 36, 0, 693681), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:36:00,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:36:00,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:36:00,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:10 GMT)" executed successfully proxycacheblobworker stdout | 2025-09-26 08:36:02,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:36:02,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:12.477454+00:00 (in 9.999479 seconds) proxycacheblobworker stdout | 2025-09-26 08:36:02,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:12 GMT)" (scheduled at 2025-09-26 08:36:02.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:36:02,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:36:02,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 36, 2, 478352), True, datetime.datetime(2025, 9, 26, 8, 36, 2, 478352), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:36:02,485 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:36:02,485 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:36:02,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:12 GMT)" executed successfully storagereplication stdout | 2025-09-26 08:36:02,515 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} namespacegcworker stdout | 2025-09-26 08:36:02,907 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-web stdout | 2025-09-26 08:36:03,199 [247] [DEBUG] [app] Starting request: urn:request:9051eb26-1050-49b6-89e2-5f9d8f493f08 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:36:03,200 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:36:03,201 [258] [DEBUG] [app] Starting request: urn:request:85e2e788-a341-41fa-a9c0-78c3b56646fb (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:36:03,202 [258] [DEBUG] [app] Ending request: urn:request:85e2e788-a341-41fa-a9c0-78c3b56646fb (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:85e2e788-a341-41fa-a9c0-78c3b56646fb', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:36:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-registry stdout | 2025-09-26 08:36:03,203 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:36:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:36:03,203 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:36:03,204 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:36:03,206 [247] [DEBUG] [app] Starting request: urn:request:cd19fd96-68b4-40cd-88ce-532d89151cdf (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:36:03,206 [247] [DEBUG] [app] Ending request: urn:request:cd19fd96-68b4-40cd-88ce-532d89151cdf (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:cd19fd96-68b4-40cd-88ce-532d89151cdf', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:36:03,206 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:36:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:36:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:36:03,206 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:36:03,207 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:36:03,207 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:36:03,207 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:36:03,212 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:36:03,212 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:36:03,216 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:36:03,217 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:36:03,218 [247] [DEBUG] [app] Ending request: urn:request:9051eb26-1050-49b6-89e2-5f9d8f493f08 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:9051eb26-1050-49b6-89e2-5f9d8f493f08', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:36:03,218 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:36:03,218 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:36:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:36:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.020 118 0.020) gunicorn-web stdout | 2025-09-26 08:36:03,261 [247] [DEBUG] [app] Starting request: urn:request:83b8a77a-002b-4373-bac3-33278b5e3eb1 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:36:03,263 [251] [DEBUG] [app] Starting request: urn:request:c451afbf-0d3b-4e16-90d2-671209b03d73 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:36:03,264 [251] [DEBUG] [app] Ending request: urn:request:c451afbf-0d3b-4e16-90d2-671209b03d73 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:c451afbf-0d3b-4e16-90d2-671209b03d73', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:36:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-registry stdout | 2025-09-26 08:36:03,264 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:36:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:36:03,264 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:36:03,265 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:36:03,267 [249] [DEBUG] [app] Starting request: urn:request:58b8c517-c836-4206-8148-049642c548e3 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:36:03,267 [249] [DEBUG] [app] Ending request: urn:request:58b8c517-c836-4206-8148-049642c548e3 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:58b8c517-c836-4206-8148-049642c548e3', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:36:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:36:03,267 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:36:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:36:03,267 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:36:03,268 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:36:03,268 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:36:03,268 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:36:03,273 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:36:03,273 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:36:03,277 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:36:03,278 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:36:03,279 [247] [DEBUG] [app] Ending request: urn:request:83b8a77a-002b-4373-bac3-33278b5e3eb1 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:83b8a77a-002b-4373-bac3-33278b5e3eb1', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:36:03,279 [247] [DEBUG] [data.database] Disconnecting from database. nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:36:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.019 118 0.019) gunicorn-web stdout | 2025-09-26 08:36:03,279 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:36:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" autopruneworker stdout | 2025-09-26 08:36:04,294 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} expiredappspecifictokenworker stdout | 2025-09-26 08:36:04,379 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} manifestbackfillworker stdout | 2025-09-26 08:36:04,593 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} builder stdout | 2025-09-26 08:36:04,987 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} logrotateworker stdout | 2025-09-26 08:36:06,297 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gcworker stdout | 2025-09-26 08:36:07,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:36:07,086 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:27.083344+00:00 (in 19.997290 seconds) gcworker stdout | 2025-09-26 08:36:07,086 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:37 GMT)" (scheduled at 2025-09-26 08:36:07.085344+00:00) gcworker stdout | 2025-09-26 08:36:07,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gcworker stdout | 2025-09-26 08:36:07,093 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875467092, None, 1, 0]) gcworker stdout | 2025-09-26 08:36:07,094 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:36:07,095 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:37 GMT)" executed successfully securityworker stdout | 2025-09-26 08:36:07,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:36:07,684 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:11.684816+00:00 (in 4.000792 seconds) securityworker stdout | 2025-09-26 08:36:07,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:37 GMT)" (scheduled at 2025-09-26 08:36:07.683505+00:00) securityworker stdout | 2025-09-26 08:36:07,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:36:07,684 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:36:07,689 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:36:07,691 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:36:07,697 [86] [DEBUG] [peewee] ('SELECT Min("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:36:07,698 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:36:07,698 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:37 GMT)" executed successfully namespacegcworker stdout | 2025-09-26 08:36:08,794 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:36:08,794 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:26.793442+00:00 (in 17.999123 seconds) namespacegcworker stdout | 2025-09-26 08:36:08,794 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:08 GMT)" (scheduled at 2025-09-26 08:36:08.793810+00:00) namespacegcworker stdout | 2025-09-26 08:36:08,794 [66] [DEBUG] [workers.queueworker] Running watchdog. namespacegcworker stdout | 2025-09-26 08:36:08,794 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:08 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:36:09,634 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:36:09,642 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:36:09,682 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:36:09,693 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:36:09,697 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gcworker stdout | 2025-09-26 08:36:09,792 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} securityscanningnotificationworker stdout | 2025-09-26 08:36:09,978 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} queuecleanupworker stdout | 2025-09-26 08:36:10,188 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} gunicorn-secscan stdout | 2025-09-26 08:36:10,348 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:36:10,352 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} gunicorn-secscan stdout | 2025-09-26 08:36:10,357 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} securityscanningnotificationworker stdout | 2025-09-26 08:36:10,584 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:36:10,584 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:28.587130+00:00 (in 18.002241 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:36:10,585 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:10 GMT)" (scheduled at 2025-09-26 08:36:10.584403+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:36:10,585 [82] [DEBUG] [workers.queueworker] Getting work item from queue. securityscanningnotificationworker stdout | 2025-09-26 08:36:10,594 [82] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 36, 10, 585473), True, datetime.datetime(2025, 9, 26, 8, 36, 10, 585473), 0, 'secscanv4/%', 50, 1, 0]) autopruneworker stdout | 2025-09-26 08:36:10,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:36:10,598 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:40.598100+00:00 (in 29.999595 seconds) autopruneworker stdout | 2025-09-26 08:36:10,598 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:40 GMT)" (scheduled at 2025-09-26 08:36:10.598100+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:36:10,601 [82] [DEBUG] [workers.queueworker] No more work. securityscanningnotificationworker stdout | 2025-09-26 08:36:10,601 [82] [DEBUG] [data.database] Disconnecting from database. securityscanningnotificationworker stdout | 2025-09-26 08:36:10,601 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:10 GMT)" executed successfully autopruneworker stdout | 2025-09-26 08:36:10,608 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758872170602, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:36:10,611 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:36:10,612 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:36:10,612 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:40 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:36:10,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:36:10,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:20.692901+00:00 (in 9.999586 seconds) notificationworker stdout | 2025-09-26 08:36:10,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:20 GMT)" (scheduled at 2025-09-26 08:36:10.692901+00:00) notificationworker stdout | 2025-09-26 08:36:10,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:36:10,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 36, 10, 693617), True, datetime.datetime(2025, 9, 26, 8, 36, 10, 693617), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:36:10,700 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:36:10,700 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:36:10,700 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:20 GMT)" executed successfully chunkcleanupworker stdout | 2025-09-26 08:36:11,008 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} securityworker stdout | 2025-09-26 08:36:11,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:36:11,685 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:37.683505+00:00 (in 25.998126 seconds) securityworker stdout | 2025-09-26 08:36:11,685 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:41 GMT)" (scheduled at 2025-09-26 08:36:11.684816+00:00) securityworker stdout | 2025-09-26 08:36:11,685 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:36:11,685 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:36:11,688 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:36:11,690 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:36:11,696 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:36:11,696 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:36:11,696 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:36:11,696 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:36:11,698 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 2]) securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:36:11,699 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:36:11,699 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:36:11,699 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:36:11,699 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:36:11,700 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:36:11,700 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:36:11,700 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:36:11,700 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:36:11,700 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:36:11,700 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:36:11,700 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:36:11,700 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 31, 11, 690443), 1, 2]) securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:36:11,702 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:36:11,702 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:36:11,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:36:11,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:36:11,702 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:36:11,702 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:36:11,702 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:36:11,702 [86] [DEBUG] [util.migrate.allocator] Total range: 1-2 securityworker stdout | 2025-09-26 08:36:11,702 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:36:11,702 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:36:11,702 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:36:11,703 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 31, 11, 690443), 1, 2]) securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:36:11,704 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-2 by worker securityworker stdout | 2025-09-26 08:36:11,704 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stdout | 2025-09-26 08:36:11,704 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:36:11,704 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stdout | 2025-09-26 08:36:11,704 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:36:11,704 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stdout | 2025-09-26 08:36:11,704 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-2 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 2 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] Total range: 2-1 securityworker stderr | 2025-09-26 08:36:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:36:11,704 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:36:11,704 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:41 GMT)" executed successfully repositorygcworker stdout | 2025-09-26 08:36:11,999 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} proxycacheblobworker stdout | 2025-09-26 08:36:12,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:36:12,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:22.477454+00:00 (in 9.999523 seconds) proxycacheblobworker stdout | 2025-09-26 08:36:12,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:22 GMT)" (scheduled at 2025-09-26 08:36:12.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:36:12,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:36:12,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 36, 12, 478299), True, datetime.datetime(2025, 9, 26, 8, 36, 12, 478299), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:36:12,485 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:36:12,485 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:36:12,485 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:22 GMT)" executed successfully servicekey stdout | 2025-09-26 08:36:12,610 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:36:12,688 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} gunicorn-registry stdout | 2025-09-26 08:36:14,119 [59] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '59'} gunicorn-registry stdout | 2025-09-26 08:36:14,124 [257] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '257'} gunicorn-registry stdout | 2025-09-26 08:36:14,128 [253] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '253'} gunicorn-registry stdout | 2025-09-26 08:36:14,131 [255] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '255'} gunicorn-registry stdout | 2025-09-26 08:36:14,136 [258] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '258'} gunicorn-registry stdout | 2025-09-26 08:36:14,141 [256] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '256'} gunicorn-registry stdout | 2025-09-26 08:36:14,146 [251] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '251'} gunicorn-registry stdout | 2025-09-26 08:36:14,154 [252] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '252'} gunicorn-registry stdout | 2025-09-26 08:36:14,167 [254] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '254'} buildlogsarchiver stdout | 2025-09-26 08:36:15,514 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} buildlogsarchiver stdout | 2025-09-26 08:36:17,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:36:17,375 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:47.375102+00:00 (in 29.999558 seconds) buildlogsarchiver stdout | 2025-09-26 08:36:17,375 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:47 GMT)" (scheduled at 2025-09-26 08:36:17.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:36:17,382 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 36, 17, 375823), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:36:17,388 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:36:17,388 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:36:17,388 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:47 GMT)" executed successfully manifestsubjectbackfillworker stdout | 2025-09-26 08:36:17,985 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:36:17,986 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:33.984400+00:00 (in 15.998208 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:36:17,986 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:17 GMT)" (scheduled at 2025-09-26 08:36:17.985743+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:36:17,986 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."artifact_type_backfilled" = %s) OR ("t1"."artifact_type_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:36:17,992 [64] [DEBUG] [__main__] Manifest artifact_type backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:36:17,992 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:36:17,992 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:17 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:36:18,200 [248] [DEBUG] [app] Starting request: urn:request:4c85cc56-7619-4866-a872-5c5f99fe97eb (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:36:18,201 [248] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:36:18,203 [258] [DEBUG] [app] Starting request: urn:request:897ed8d0-1fb7-4605-a2a1-7774529c918c (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:36:18,203 [258] [DEBUG] [app] Ending request: urn:request:897ed8d0-1fb7-4605-a2a1-7774529c918c (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:897ed8d0-1fb7-4605-a2a1-7774529c918c', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:36:18,204 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:36:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:36:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:36:18,204 [248] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:36:18,211 [248] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:36:18,212 [248] [DEBUG] [app] Starting request: urn:request:5cde409d-ee74-4027-b2ed-f6e1a46e0e0c (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:36:18,213 [248] [DEBUG] [app] Ending request: urn:request:5cde409d-ee74-4027-b2ed-f6e1a46e0e0c (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:5cde409d-ee74-4027-b2ed-f6e1a46e0e0c', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:36:18,213 [248] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:36:18 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:36:18 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:36:18,213 [248] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:36:18,213 [248] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:36:18,214 [248] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:36:18,214 [248] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:36:18,219 [248] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:36:18,219 [248] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:36:18,223 [248] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:36:18,225 [248] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:36:18,226 [248] [DEBUG] [app] Ending request: urn:request:4c85cc56-7619-4866-a872-5c5f99fe97eb (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:4c85cc56-7619-4866-a872-5c5f99fe97eb', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:36:18,226 [248] [DEBUG] [data.database] Disconnecting from database. nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:36:18 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.027 118 0.027) gunicorn-web stdout | 2025-09-26 08:36:18,226 [248] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:36:18 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" gunicorn-web stdout | 2025-09-26 08:36:18,262 [247] [DEBUG] [app] Starting request: urn:request:a7ca13dd-38f2-4ef3-af20-d4b4e3e57f92 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:36:18,263 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:36:18,266 [257] [DEBUG] [app] Starting request: urn:request:bf765370-ea9b-4f21-9f9e-1f6c4734a785 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:36:18,275 [257] [DEBUG] [app] Ending request: urn:request:bf765370-ea9b-4f21-9f9e-1f6c4734a785 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:bf765370-ea9b-4f21-9f9e-1f6c4734a785', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:36:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.012 162 0.012) gunicorn-registry stdout | 2025-09-26 08:36:18,276 [257] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:36:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:36:18,276 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:36:18,278 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:36:18,279 [247] [DEBUG] [app] Starting request: urn:request:3f60b6ac-c96c-4ab4-b47a-a7de91dd45b5 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:36:18,280 [247] [DEBUG] [app] Ending request: urn:request:3f60b6ac-c96c-4ab4-b47a-a7de91dd45b5 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:3f60b6ac-c96c-4ab4-b47a-a7de91dd45b5', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:36:18,280 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:36:18 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:36:18,281 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:36:18 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:36:18,281 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:36:18,281 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:36:18,281 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:36:18,285 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:36:18,285 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:36:18,289 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:36:18,290 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:36:18,291 [247] [DEBUG] [app] Ending request: urn:request:a7ca13dd-38f2-4ef3-af20-d4b4e3e57f92 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:a7ca13dd-38f2-4ef3-af20-d4b4e3e57f92', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:36:18,291 [247] [DEBUG] [data.database] Disconnecting from database. nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:36:18 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.030 118 0.030) gunicorn-web stdout | 2025-09-26 08:36:18,291 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:36:18 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" securityworker stdout | 2025-09-26 08:36:18,715 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} repositorygcworker stdout | 2025-09-26 08:36:19,075 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:36:19,076 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:28.077240+00:00 (in 9.001108 seconds) repositorygcworker stdout | 2025-09-26 08:36:19,076 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:19 GMT)" (scheduled at 2025-09-26 08:36:19.075668+00:00) repositorygcworker stdout | 2025-09-26 08:36:19,076 [81] [DEBUG] [workers.queueworker] Getting work item from queue. repositorygcworker stdout | 2025-09-26 08:36:19,077 [81] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 36, 19, 76396), True, datetime.datetime(2025, 9, 26, 8, 36, 19, 76396), 0, 'repositorygc/%', 50, 1, 0]) repositorygcworker stdout | 2025-09-26 08:36:19,084 [81] [DEBUG] [workers.queueworker] No more work. repositorygcworker stdout | 2025-09-26 08:36:19,084 [81] [DEBUG] [data.database] Disconnecting from database. repositorygcworker stdout | 2025-09-26 08:36:19,084 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:19 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:36:20,073 [247] [DEBUG] [app] Starting request: urn:request:bc801404-1f32-4fbf-89bf-15be724a675b (/api/v1/user/initialize) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-web stdout | 2025-09-26 08:36:20,074 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:36:20,081 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) OR ("t1"."email" = %s)) LIMIT %s OFFSET %s', ['quay', 'quay@quay.com', 1, 0]) gunicorn-web stdout | 2025-09-26 08:36:20,082 [247] [DEBUG] [data.model.user] Email and username are unique! gunicorn-web stdout | 2025-09-26 08:36:20,083 [247] [DEBUG] [peewee] ('INSERT INTO "user" ("uuid", "username", "email", "verified", "organization", "robot", "invoice_email", "invalid_login_attempts", "last_invalid_login", "removed_tag_expiration_s", "enabled", "maximum_queued_builds_count", "creation_date") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "user"."id"', ['9f776dce-7347-4b69-8bd5-3621034db23c', 'quay', 'quay@quay.com', False, False, False, False, 0, datetime.datetime(2025, 9, 26, 8, 36, 20, 83186), 1209600, True, None, datetime.datetime(2025, 9, 26, 8, 36, 20, 83190)]) gunicorn-web stdout | 2025-09-26 08:36:20,360 [247] [DEBUG] [peewee] ('UPDATE "user" SET "uuid" = %s, "username" = %s, "password_hash" = %s, "email" = %s, "verified" = %s, "organization" = %s, "robot" = %s, "invoice_email" = %s, "invalid_login_attempts" = %s, "last_invalid_login" = %s, "removed_tag_expiration_s" = %s, "enabled" = %s, "maximum_queued_builds_count" = %s, "creation_date" = %s WHERE ("user"."id" = %s)', ['9f776dce-7347-4b69-8bd5-3621034db23c', 'quay', '$2b$12$Vhd7ulEXZfIXMOu7H.9mU.zVfC9UbuUinD8DIW7vi3oOBbX69G15i', 'quay@quay.com', True, False, False, False, 0, datetime.datetime(2025, 9, 26, 8, 36, 20, 83186), 1209600, True, None, datetime.datetime(2025, 9, 26, 8, 36, 20, 83190), 1]) gunicorn-web stdout | 2025-09-26 08:36:20,362 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-web stdout | 2025-09-26 08:36:20,364 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-web stdout | 2025-09-26 08:36:20,365 [247] [DEBUG] [endpoints.common] Successfully signed in as user quay with uuid 9f776dce-7347-4b69-8bd5-3621034db23c gunicorn-web stdout | 2025-09-26 08:36:20,365 [247] [DEBUG] [auth.permissions] Identity loaded: gunicorn-web stdout | 2025-09-26 08:36:20,365 [247] [DEBUG] [auth.permissions] Deferring permissions for user with uuid: 9f776dce-7347-4b69-8bd5-3621034db23c gunicorn-web stdout | 2025-09-26 08:36:20,367 [247] [DEBUG] [peewee] ('INSERT INTO "oauthapplication" ("client_id", "secure_client_secret", "fully_migrated", "redirect_uri", "application_uri", "organization_id", "name", "description") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "oauthapplication"."id"', ['quay', 'v0$$wbp26him+EhDl0mk7walMf7R5cFx/pUBz257bc68UHuKvFsezMe5T6y009I0CcPEXhojBHIMca1Yvlhq6pbrZ4cLuEuc', False, '', '', 1, 'automation', 'Application token generated via /api/v1/user/initialize']) gunicorn-web stdout | 2025-09-26 08:36:20,369 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."client_id", "t1"."secure_client_secret", "t1"."fully_migrated", "t1"."redirect_uri", "t1"."application_uri", "t1"."organization_id", "t1"."name", "t1"."description", "t1"."gravatar_email" FROM "oauthapplication" AS "t1" WHERE ("t1"."client_id" = %s) LIMIT %s OFFSET %s', ['quay', 1, 0]) gunicorn-web stdout | 2025-09-26 08:36:20,642 [247] [DEBUG] [peewee] ('INSERT INTO "oauthaccesstoken" ("uuid", "application_id", "authorized_user_id", "scope", "token_name", "token_code", "token_type", "expires_at", "data") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "oauthaccesstoken"."id"', ['efe6b280-937d-4da8-9e92-c0531fd4b0aa', 1, 1, 'org:admin repo:admin repo:create repo:read repo:write super:user user:admin user:read', 'D1BMH6MLFZHLM2D9VN0N', '$2b$12$IiWsRoA7AXzpsmok/IWzoOXW.qhaR1W/orG8bS2SkGp5v2Bg69fky', 'token', datetime.datetime(2025, 9, 26, 11, 6, 20, 369501), '']) gunicorn-web stdout | 2025-09-26 08:36:20,645 [247] [DEBUG] [app] Ending request: urn:request:bc801404-1f32-4fbf-89bf-15be724a675b (/api/v1/user/initialize) {'endpoint': 'web.user_initialize', 'request_id': 'urn:request:bc801404-1f32-4fbf-89bf-15be724a675b', 'remote_addr': '10.131.2.20', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/api/v1/user/initialize', 'path': '/api/v1/user/initialize', 'parameters': {}, 'json_body': {'username': 'quay', 'password': '[FILTERED]', 'email': 'quay@quay.com', 'access_token': True}, 'confsha': 'ab94b86d', 'user-agent': 'curl/7.61.1'} gunicorn-web stdout | 2025-09-26 08:36:20,645 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:36:20,645 [247] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:20 +0000] "POST /api/v1/user/initialize HTTP/1.0" 200 190 "-" "curl/7.61.1" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:20 +0000] "POST /api/v1/user/initialize HTTP/1.1" 200 190 "-" "curl/7.61.1" (0.574 643 0.573) notificationworker stdout | 2025-09-26 08:36:20,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:36:20,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:30.692901+00:00 (in 9.999576 seconds) notificationworker stdout | 2025-09-26 08:36:20,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:30 GMT)" (scheduled at 2025-09-26 08:36:20.692901+00:00) notificationworker stdout | 2025-09-26 08:36:20,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:36:20,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 36, 20, 693610), True, datetime.datetime(2025, 9, 26, 8, 36, 20, 693610), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:36:20,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:36:20,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:36:20,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:30 GMT)" executed successfully blobuploadcleanupworker stdout | 2025-09-26 08:36:22,019 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} gunicorn-registry stdout | 2025-09-26 08:36:22,042 [257] [DEBUG] [app] Starting request: urn:request:5ca2cd8e-4c52-4fc1-b2c0-2bbbaf69a7da (/v2/auth) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:22,043 [257] [DEBUG] [auth.basic] Attempt to process basic auth header gunicorn-registry stdout | 2025-09-26 08:36:22,043 [256] [DEBUG] [app] Starting request: urn:request:cfc5a0a5-6cf3-448f-9d53-1bfb71c30a2f (/v2/auth) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:22,043 [256] [DEBUG] [auth.basic] Attempt to process basic auth header gunicorn-registry stdout | 2025-09-26 08:36:22,043 [251] [DEBUG] [app] Starting request: urn:request:a4dc430c-a37b-4830-8d0d-54cd2cf32655 (/v2/auth) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:22,043 [251] [DEBUG] [auth.basic] Attempt to process basic auth header gunicorn-registry stdout | 2025-09-26 08:36:22,045 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) OR ("t1"."email" = %s)) LIMIT %s OFFSET %s', ['quay', 'quay', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,045 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) OR ("t1"."email" = %s)) LIMIT %s OFFSET %s', ['quay', 'quay', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,045 [257] [DEBUG] [peewee.pool] No connection available in pool. gunicorn-registry stdout | 2025-09-26 08:36:22,045 [256] [DEBUG] [peewee.pool] No connection available in pool. gunicorn-registry stdout | 2025-09-26 08:36:22,045 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) OR ("t1"."email" = %s)) LIMIT %s OFFSET %s', ['quay', 'quay', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,046 [251] [DEBUG] [peewee.pool] No connection available in pool. gunicorn-registry stdout | 2025-09-26 08:36:22,047 [255] [DEBUG] [app] Starting request: urn:request:1d3de5f7-ff33-428c-9c1d-bc644cd9c368 (/v2/auth) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:22,047 [254] [DEBUG] [app] Starting request: urn:request:73c873ad-b408-4525-8b21-438ca9bb2bdd (/v2/auth) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:22,047 [255] [DEBUG] [auth.basic] Attempt to process basic auth header gunicorn-registry stdout | 2025-09-26 08:36:22,047 [254] [DEBUG] [auth.basic] Attempt to process basic auth header gunicorn-registry stdout | 2025-09-26 08:36:22,051 [256] [DEBUG] [peewee.pool] Created new connection 140607466707904. gunicorn-registry stdout | 2025-09-26 08:36:22,051 [251] [DEBUG] [peewee.pool] Created new connection 140607466707904. gunicorn-registry stdout | 2025-09-26 08:36:22,052 [257] [DEBUG] [peewee.pool] Created new connection 140607466707904. gunicorn-registry stdout | 2025-09-26 08:36:22,061 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) OR ("t1"."email" = %s)) LIMIT %s OFFSET %s', ['quay', 'quay', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,061 [254] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) OR ("t1"."email" = %s)) LIMIT %s OFFSET %s', ['quay', 'quay', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,061 [254] [DEBUG] [peewee.pool] No connection available in pool. gunicorn-registry stdout | 2025-09-26 08:36:22,063 [255] [DEBUG] [peewee.pool] No connection available in pool. gunicorn-registry stdout | 2025-09-26 08:36:22,068 [254] [DEBUG] [peewee.pool] Created new connection 140607466707904. gunicorn-registry stdout | 2025-09-26 08:36:22,068 [255] [DEBUG] [peewee.pool] Created new connection 140607466707904. proxycacheblobworker stdout | 2025-09-26 08:36:22,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:36:22,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:26.483749+00:00 (in 4.005791 seconds) proxycacheblobworker stdout | 2025-09-26 08:36:22,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:32 GMT)" (scheduled at 2025-09-26 08:36:22.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:36:22,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:36:22,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 36, 22, 478391), True, datetime.datetime(2025, 9, 26, 8, 36, 22, 478391), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:36:22,487 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:36:22,487 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:36:22,488 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:32 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:36:22,679 [251] [DEBUG] [auth.credentials] Successfully validated credentials for user quay gunicorn-registry stdout | 2025-09-26 08:36:22,679 [251] [DEBUG] [auth.decorators] Found valid auth result: (, False, None, [, None, None, None, None, None, None]) gunicorn-registry stdout | 2025-09-26 08:36:22,681 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:22,682 [251] [DEBUG] [auth.permissions] Deferring permissions for user with uuid: 9f776dce-7347-4b69-8bd5-3621034db23c gunicorn-registry stdout | 2025-09-26 08:36:22,684 [251] [DEBUG] [endpoints.v2.v2auth] Request audience: quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com gunicorn-registry stdout | 2025-09-26 08:36:22,684 [251] [DEBUG] [endpoints.v2.v2auth] Scope request: ['repository:quayorg/quayrepo:pull,push'] gunicorn-registry stdout | 2025-09-26 08:36:22,685 [251] [DEBUG] [endpoints.v2.v2auth] Match: ('quayorg/quayrepo', 'quayorg/quayrepo', 'pull,push') gunicorn-registry stdout | 2025-09-26 08:36:22,685 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."username" = %s) LIMIT %s OFFSET %s', ['quayorg', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,688 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['quayorg', 'quayrepo', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,691 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,692 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,694 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:22,695 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['public', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,697 [251] [DEBUG] [auth.permissions] Loading user permissions after deferring for: 9f776dce-7347-4b69-8bd5-3621034db23c gunicorn-registry stdout | 2025-09-26 08:36:22,697 [251] [DEBUG] [auth.permissions] User permission: _UserTypeNeed(type='user', username='quay', role='admin') gunicorn-registry stdout | 2025-09-26 08:36:22,697 [251] [DEBUG] [auth.permissions] User namespace permission: _NamespaceWideNeed(type='organization', namespace='quay', role='admin') gunicorn-registry stdout | 2025-09-26 08:36:22,697 [251] [DEBUG] [auth.permissions] User namespace repo permission: _NamespaceWideNeed(type='organizationrepo', namespace='quay', role='admin') gunicorn-registry stdout | 2025-09-26 08:36:22,702 [257] [DEBUG] [auth.credentials] Successfully validated credentials for user quay gunicorn-registry stdout | 2025-09-26 08:36:22,702 [257] [DEBUG] [auth.decorators] Found valid auth result: (, False, None, [, None, None, None, None, None, None]) gunicorn-registry stdout | 2025-09-26 08:36:22,703 [257] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:22,703 [257] [DEBUG] [auth.permissions] Deferring permissions for user with uuid: 9f776dce-7347-4b69-8bd5-3621034db23c gunicorn-registry stdout | 2025-09-26 08:36:22,703 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."team_id", "t1"."user_id", "t1"."repository_id", "t1"."role_id", "t2"."id", "t2"."name", "t3"."id", "t3"."namespace_user_id", "t3"."name", "t3"."visibility_id", "t3"."description", "t3"."badge_token", "t3"."kind_id", "t3"."trust_enabled", "t3"."state", "t4"."id", "t4"."uuid", "t4"."username", "t4"."password_hash", "t4"."email", "t4"."verified", "t4"."stripe_id", "t4"."organization", "t4"."robot", "t4"."invoice_email", "t4"."invalid_login_attempts", "t4"."last_invalid_login", "t4"."removed_tag_expiration_s", "t4"."enabled", "t4"."invoice_email_address", "t4"."given_name", "t4"."family_name", "t4"."company", "t4"."location", "t4"."maximum_queued_builds_count", "t4"."creation_date", "t4"."last_accessed" FROM "repositorypermission" AS "t1" INNER JOIN "role" AS "t2" ON ("t1"."role_id" = "t2"."id") INNER JOIN "repository" AS "t3" ON ("t1"."repository_id" = "t3"."id") INNER JOIN "user" AS "t4" ON ("t3"."namespace_user_id" = "t4"."id") INNER JOIN "user" AS "t5" ON ("t1"."user_id" = "t5"."id") WHERE ((("t3"."name" = %s) AND ("t4"."username" = %s)) AND ("t5"."id" = %s))', ['quayrepo', 'quayorg', 1]) gunicorn-registry stdout | 2025-09-26 08:36:22,703 [257] [DEBUG] [endpoints.v2.v2auth] Request audience: quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com gunicorn-registry stdout | 2025-09-26 08:36:22,703 [257] [DEBUG] [endpoints.v2.v2auth] Scope request: ['repository:quayorg/quayrepo:pull,push'] gunicorn-registry stdout | 2025-09-26 08:36:22,704 [257] [DEBUG] [endpoints.v2.v2auth] Match: ('quayorg/quayrepo', 'quayorg/quayrepo', 'pull,push') gunicorn-registry stdout | 2025-09-26 08:36:22,705 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."username" = %s) LIMIT %s OFFSET %s', ['quayorg', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,708 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['quayorg', 'quayrepo', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,708 [251] [DEBUG] [auth.permissions] User added permission: _ResourceNeed(type='repository', namespace='quayorg', name='quayrepo', role='admin') gunicorn-registry stdout | 2025-09-26 08:36:22,769 [256] [DEBUG] [auth.credentials] Successfully validated credentials for user quay gunicorn-registry stdout | 2025-09-26 08:36:22,769 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."team_id", "t1"."user_id", "t1"."repository_id", "t1"."role_id", "t2"."id", "t2"."name", "t3"."id", "t3"."namespace_user_id", "t3"."name", "t3"."visibility_id", "t3"."description", "t3"."badge_token", "t3"."kind_id", "t3"."trust_enabled", "t3"."state", "t4"."id", "t4"."uuid", "t4"."username", "t4"."password_hash", "t4"."email", "t4"."verified", "t4"."stripe_id", "t4"."organization", "t4"."robot", "t4"."invoice_email", "t4"."invalid_login_attempts", "t4"."last_invalid_login", "t4"."removed_tag_expiration_s", "t4"."enabled", "t4"."invoice_email_address", "t4"."given_name", "t4"."family_name", "t4"."company", "t4"."location", "t4"."maximum_queued_builds_count", "t4"."creation_date", "t4"."last_accessed" FROM "repositorypermission" AS "t1" INNER JOIN "role" AS "t2" ON ("t1"."role_id" = "t2"."id") INNER JOIN "repository" AS "t3" ON ("t1"."repository_id" = "t3"."id") INNER JOIN "user" AS "t4" ON ("t3"."namespace_user_id" = "t4"."id") INNER JOIN "team" AS "t5" ON ("t1"."team_id" = "t5"."id") INNER JOIN "teammember" AS "t6" ON ("t6"."team_id" = "t5"."id") INNER JOIN "user" AS "t7" ON ("t7"."id" = "t6"."user_id") WHERE ((("t3"."name" = %s) AND ("t4"."username" = %s)) AND ("t7"."id" = %s))', ['quayrepo', 'quayorg', 1]) gunicorn-registry stdout | 2025-09-26 08:36:22,769 [256] [DEBUG] [auth.decorators] Found valid auth result: (, False, None, [, None, None, None, None, None, None]) gunicorn-registry stdout | 2025-09-26 08:36:22,770 [254] [DEBUG] [auth.credentials] Successfully validated credentials for user quay gunicorn-registry stdout | 2025-09-26 08:36:22,770 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,770 [256] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:22,770 [256] [DEBUG] [auth.permissions] Deferring permissions for user with uuid: 9f776dce-7347-4b69-8bd5-3621034db23c gunicorn-registry stdout | 2025-09-26 08:36:22,770 [254] [DEBUG] [auth.decorators] Found valid auth result: (, False, None, [, None, None, None, None, None, None]) gunicorn-registry stdout | 2025-09-26 08:36:22,771 [256] [DEBUG] [endpoints.v2.v2auth] Request audience: quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com gunicorn-registry stdout | 2025-09-26 08:36:22,771 [254] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:22,771 [254] [DEBUG] [auth.permissions] Deferring permissions for user with uuid: 9f776dce-7347-4b69-8bd5-3621034db23c gunicorn-registry stdout | 2025-09-26 08:36:22,771 [256] [DEBUG] [endpoints.v2.v2auth] Scope request: ['repository:quayorg/quayrepo:pull,push'] gunicorn-registry stdout | 2025-09-26 08:36:22,771 [256] [DEBUG] [endpoints.v2.v2auth] Match: ('quayorg/quayrepo', 'quayorg/quayrepo', 'pull,push') gunicorn-registry stdout | 2025-09-26 08:36:22,772 [254] [DEBUG] [endpoints.v2.v2auth] Request audience: quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com gunicorn-registry stdout | 2025-09-26 08:36:22,772 [254] [DEBUG] [endpoints.v2.v2auth] Scope request: ['repository:quayorg/quayrepo:pull,push'] gunicorn-registry stdout | 2025-09-26 08:36:22,773 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."username" = %s) LIMIT %s OFFSET %s', ['quayorg', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,773 [254] [DEBUG] [endpoints.v2.v2auth] Match: ('quayorg/quayrepo', 'quayorg/quayrepo', 'pull,push') gunicorn-registry stdout | 2025-09-26 08:36:22,774 [254] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."username" = %s) LIMIT %s OFFSET %s', ['quayorg', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,774 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,774 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['quayorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,775 [255] [DEBUG] [auth.credentials] Successfully validated credentials for user quay gunicorn-registry stdout | 2025-09-26 08:36:22,775 [255] [DEBUG] [auth.decorators] Found valid auth result: (, False, None, [, None, None, None, None, None, None]) gunicorn-registry stdout | 2025-09-26 08:36:22,775 [255] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:22,775 [255] [DEBUG] [auth.permissions] Deferring permissions for user with uuid: 9f776dce-7347-4b69-8bd5-3621034db23c gunicorn-registry stdout | 2025-09-26 08:36:22,776 [255] [DEBUG] [endpoints.v2.v2auth] Request audience: quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com gunicorn-registry stdout | 2025-09-26 08:36:22,776 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['quayorg', 'quayrepo', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,776 [251] [DEBUG] [auth.permissions] Loading user permissions after deferring for: 9f776dce-7347-4b69-8bd5-3621034db23c gunicorn-registry stdout | 2025-09-26 08:36:22,776 [255] [DEBUG] [endpoints.v2.v2auth] Scope request: ['repository:quayorg/quayrepo:pull,push'] gunicorn-registry stdout | 2025-09-26 08:36:22,776 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:22,777 [255] [DEBUG] [endpoints.v2.v2auth] Match: ('quayorg/quayrepo', 'quayorg/quayrepo', 'pull,push') gunicorn-registry stdout | 2025-09-26 08:36:22,777 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['public', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,778 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."username" = %s) LIMIT %s OFFSET %s', ['quayorg', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,778 [257] [DEBUG] [auth.permissions] Loading user permissions after deferring for: 9f776dce-7347-4b69-8bd5-3621034db23c gunicorn-registry stdout | 2025-09-26 08:36:22,778 [257] [DEBUG] [auth.permissions] User permission: _UserTypeNeed(type='user', username='quay', role='admin') gunicorn-registry stdout | 2025-09-26 08:36:22,778 [257] [DEBUG] [auth.permissions] User namespace permission: _NamespaceWideNeed(type='organization', namespace='quay', role='admin') gunicorn-registry stdout | 2025-09-26 08:36:22,778 [257] [DEBUG] [auth.permissions] User namespace repo permission: _NamespaceWideNeed(type='organizationrepo', namespace='quay', role='admin') gunicorn-registry stdout | 2025-09-26 08:36:22,779 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,780 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,780 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."team_id", "t1"."user_id", "t1"."repository_id", "t1"."role_id", "t2"."id", "t2"."name", "t3"."id", "t3"."namespace_user_id", "t3"."name", "t3"."visibility_id", "t3"."description", "t3"."badge_token", "t3"."kind_id", "t3"."trust_enabled", "t3"."state", "t4"."id", "t4"."uuid", "t4"."username", "t4"."password_hash", "t4"."email", "t4"."verified", "t4"."stripe_id", "t4"."organization", "t4"."robot", "t4"."invoice_email", "t4"."invalid_login_attempts", "t4"."last_invalid_login", "t4"."removed_tag_expiration_s", "t4"."enabled", "t4"."invoice_email_address", "t4"."given_name", "t4"."family_name", "t4"."company", "t4"."location", "t4"."maximum_queued_builds_count", "t4"."creation_date", "t4"."last_accessed" FROM "repositorypermission" AS "t1" INNER JOIN "role" AS "t2" ON ("t1"."role_id" = "t2"."id") INNER JOIN "repository" AS "t3" ON ("t1"."repository_id" = "t3"."id") INNER JOIN "user" AS "t4" ON ("t3"."namespace_user_id" = "t4"."id") INNER JOIN "user" AS "t5" ON ("t1"."user_id" = "t5"."id") WHERE ((("t3"."name" = %s) AND ("t4"."username" = %s)) AND ("t5"."id" = %s))', ['quayrepo', 'quayorg', 1]) gunicorn-registry stdout | 2025-09-26 08:36:22,781 [254] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['quayorg', 'quayrepo', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,781 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['quayorg', 'quayrepo', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,782 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:22,783 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['public', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,783 [256] [DEBUG] [auth.permissions] Loading user permissions after deferring for: 9f776dce-7347-4b69-8bd5-3621034db23c gunicorn-registry stdout | 2025-09-26 08:36:22,784 [256] [DEBUG] [auth.permissions] User permission: _UserTypeNeed(type='user', username='quay', role='admin') gunicorn-registry stdout | 2025-09-26 08:36:22,784 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,784 [257] [DEBUG] [auth.permissions] User added permission: _ResourceNeed(type='repository', namespace='quayorg', name='quayrepo', role='admin') gunicorn-registry stdout | 2025-09-26 08:36:22,784 [256] [DEBUG] [auth.permissions] User namespace permission: _NamespaceWideNeed(type='organization', namespace='quay', role='admin') gunicorn-registry stdout | 2025-09-26 08:36:22,784 [256] [DEBUG] [auth.permissions] User namespace repo permission: _NamespaceWideNeed(type='organizationrepo', namespace='quay', role='admin') gunicorn-registry stdout | 2025-09-26 08:36:22,784 [254] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,785 [254] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,785 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,785 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."team_id", "t1"."user_id", "t1"."repository_id", "t1"."role_id", "t2"."id", "t2"."name", "t3"."id", "t3"."namespace_user_id", "t3"."name", "t3"."visibility_id", "t3"."description", "t3"."badge_token", "t3"."kind_id", "t3"."trust_enabled", "t3"."state", "t4"."id", "t4"."uuid", "t4"."username", "t4"."password_hash", "t4"."email", "t4"."verified", "t4"."stripe_id", "t4"."organization", "t4"."robot", "t4"."invoice_email", "t4"."invalid_login_attempts", "t4"."last_invalid_login", "t4"."removed_tag_expiration_s", "t4"."enabled", "t4"."invoice_email_address", "t4"."given_name", "t4"."family_name", "t4"."company", "t4"."location", "t4"."maximum_queued_builds_count", "t4"."creation_date", "t4"."last_accessed" FROM "repositorypermission" AS "t1" INNER JOIN "role" AS "t2" ON ("t1"."role_id" = "t2"."id") INNER JOIN "repository" AS "t3" ON ("t1"."repository_id" = "t3"."id") INNER JOIN "user" AS "t4" ON ("t3"."namespace_user_id" = "t4"."id") INNER JOIN "team" AS "t5" ON ("t1"."team_id" = "t5"."id") INNER JOIN "teammember" AS "t6" ON ("t6"."team_id" = "t5"."id") INNER JOIN "user" AS "t7" ON ("t7"."id" = "t6"."user_id") WHERE ((("t3"."name" = %s) AND ("t4"."username" = %s)) AND ("t7"."id" = %s))', ['quayrepo', 'quayorg', 1]) gunicorn-registry stdout | 2025-09-26 08:36:22,785 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."team_id", "t1"."user_id", "t1"."repository_id", "t1"."role_id", "t2"."id", "t2"."name", "t3"."id", "t3"."namespace_user_id", "t3"."name", "t3"."visibility_id", "t3"."description", "t3"."badge_token", "t3"."kind_id", "t3"."trust_enabled", "t3"."state", "t4"."id", "t4"."uuid", "t4"."username", "t4"."password_hash", "t4"."email", "t4"."verified", "t4"."stripe_id", "t4"."organization", "t4"."robot", "t4"."invoice_email", "t4"."invalid_login_attempts", "t4"."last_invalid_login", "t4"."removed_tag_expiration_s", "t4"."enabled", "t4"."invoice_email_address", "t4"."given_name", "t4"."family_name", "t4"."company", "t4"."location", "t4"."maximum_queued_builds_count", "t4"."creation_date", "t4"."last_accessed" FROM "repositorypermission" AS "t1" INNER JOIN "role" AS "t2" ON ("t1"."role_id" = "t2"."id") INNER JOIN "repository" AS "t3" ON ("t1"."repository_id" = "t3"."id") INNER JOIN "user" AS "t4" ON ("t3"."namespace_user_id" = "t4"."id") INNER JOIN "user" AS "t5" ON ("t1"."user_id" = "t5"."id") WHERE ((("t3"."name" = %s) AND ("t4"."username" = %s)) AND ("t5"."id" = %s))', ['quayrepo', 'quayorg', 1]) gunicorn-registry stdout | 2025-09-26 08:36:22,786 [254] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:22,786 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:22,787 [254] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['public', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,788 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['public', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,788 [254] [DEBUG] [auth.permissions] Loading user permissions after deferring for: 9f776dce-7347-4b69-8bd5-3621034db23c gunicorn-registry stdout | 2025-09-26 08:36:22,788 [254] [DEBUG] [auth.permissions] User permission: _UserTypeNeed(type='user', username='quay', role='admin') gunicorn-registry stdout | 2025-09-26 08:36:22,788 [254] [DEBUG] [auth.permissions] User namespace permission: _NamespaceWideNeed(type='organization', namespace='quay', role='admin') gunicorn-registry stdout | 2025-09-26 08:36:22,788 [254] [DEBUG] [auth.permissions] User namespace repo permission: _NamespaceWideNeed(type='organizationrepo', namespace='quay', role='admin') gunicorn-registry stdout | 2025-09-26 08:36:22,788 [255] [DEBUG] [auth.permissions] Loading user permissions after deferring for: 9f776dce-7347-4b69-8bd5-3621034db23c gunicorn-registry stdout | 2025-09-26 08:36:22,789 [255] [DEBUG] [auth.permissions] User permission: _UserTypeNeed(type='user', username='quay', role='admin') gunicorn-registry stdout | 2025-09-26 08:36:22,789 [255] [DEBUG] [auth.permissions] User namespace permission: _NamespaceWideNeed(type='organization', namespace='quay', role='admin') gunicorn-registry stdout | 2025-09-26 08:36:22,789 [255] [DEBUG] [auth.permissions] User namespace repo permission: _NamespaceWideNeed(type='organizationrepo', namespace='quay', role='admin') gunicorn-registry stdout | 2025-09-26 08:36:22,789 [256] [DEBUG] [auth.permissions] User added permission: _ResourceNeed(type='repository', namespace='quayorg', name='quayrepo', role='admin') gunicorn-registry stdout | 2025-09-26 08:36:22,789 [251] [DEBUG] [app] Ending request: urn:request:a4dc430c-a37b-4830-8d0d-54cd2cf32655 (/v2/auth) {'endpoint': 'v2.generate_registry_jwt', 'request_id': 'urn:request:a4dc430c-a37b-4830-8d0d-54cd2cf32655', 'remote_addr': '10.129.4.11', 'http_method': 'GET', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/auth?account=quay&scope=repository:quayorg/quayrepo:pull,push&service=quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com', 'path': '/v2/auth', 'parameters': {'account': 'quay', 'scope': 'repository:quayorg/quayrepo:pull,push', 'service': 'quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:22,790 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:22,790 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:22,790 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['quayorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,790 [251] [INFO] [gunicorn.access] 10.129.4.11 - quay [26/Sep/2025:08:36:22 +0000] "GET /v2/auth?account=quay&scope=repository%3Aquayorg%2Fquayrepo%3Apull%2Cpush&service=quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com HTTP/1.1" 200 1101 "-" "skopeo/1.14.5" gunicorn-registry stdout | 2025-09-26 08:36:22,790 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."team_id", "t1"."user_id", "t1"."repository_id", "t1"."role_id", "t2"."id", "t2"."name", "t3"."id", "t3"."namespace_user_id", "t3"."name", "t3"."visibility_id", "t3"."description", "t3"."badge_token", "t3"."kind_id", "t3"."trust_enabled", "t3"."state", "t4"."id", "t4"."uuid", "t4"."username", "t4"."password_hash", "t4"."email", "t4"."verified", "t4"."stripe_id", "t4"."organization", "t4"."robot", "t4"."invoice_email", "t4"."invalid_login_attempts", "t4"."last_invalid_login", "t4"."removed_tag_expiration_s", "t4"."enabled", "t4"."invoice_email_address", "t4"."given_name", "t4"."family_name", "t4"."company", "t4"."location", "t4"."maximum_queued_builds_count", "t4"."creation_date", "t4"."last_accessed" FROM "repositorypermission" AS "t1" INNER JOIN "role" AS "t2" ON ("t1"."role_id" = "t2"."id") INNER JOIN "repository" AS "t3" ON ("t1"."repository_id" = "t3"."id") INNER JOIN "user" AS "t4" ON ("t3"."namespace_user_id" = "t4"."id") INNER JOIN "team" AS "t5" ON ("t1"."team_id" = "t5"."id") INNER JOIN "teammember" AS "t6" ON ("t6"."team_id" = "t5"."id") INNER JOIN "user" AS "t7" ON ("t7"."id" = "t6"."user_id") WHERE ((("t3"."name" = %s) AND ("t4"."username" = %s)) AND ("t7"."id" = %s))', ['quayrepo', 'quayorg', 1]) gunicorn-registry stdout | 2025-09-26 08:36:22,790 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."team_id", "t1"."user_id", "t1"."repository_id", "t1"."role_id", "t2"."id", "t2"."name", "t3"."id", "t3"."namespace_user_id", "t3"."name", "t3"."visibility_id", "t3"."description", "t3"."badge_token", "t3"."kind_id", "t3"."trust_enabled", "t3"."state", "t4"."id", "t4"."uuid", "t4"."username", "t4"."password_hash", "t4"."email", "t4"."verified", "t4"."stripe_id", "t4"."organization", "t4"."robot", "t4"."invoice_email", "t4"."invalid_login_attempts", "t4"."last_invalid_login", "t4"."removed_tag_expiration_s", "t4"."enabled", "t4"."invoice_email_address", "t4"."given_name", "t4"."family_name", "t4"."company", "t4"."location", "t4"."maximum_queued_builds_count", "t4"."creation_date", "t4"."last_accessed" FROM "repositorypermission" AS "t1" INNER JOIN "role" AS "t2" ON ("t1"."role_id" = "t2"."id") INNER JOIN "repository" AS "t3" ON ("t1"."repository_id" = "t3"."id") INNER JOIN "user" AS "t4" ON ("t3"."namespace_user_id" = "t4"."id") INNER JOIN "user" AS "t5" ON ("t1"."user_id" = "t5"."id") WHERE ((("t3"."name" = %s) AND ("t4"."username" = %s)) AND ("t5"."id" = %s))', ['quayrepo', 'quayorg', 1]) gunicorn-registry stdout | 2025-09-26 08:36:22,791 [254] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."team_id", "t1"."user_id", "t1"."repository_id", "t1"."role_id", "t2"."id", "t2"."name", "t3"."id", "t3"."namespace_user_id", "t3"."name", "t3"."visibility_id", "t3"."description", "t3"."badge_token", "t3"."kind_id", "t3"."trust_enabled", "t3"."state", "t4"."id", "t4"."uuid", "t4"."username", "t4"."password_hash", "t4"."email", "t4"."verified", "t4"."stripe_id", "t4"."organization", "t4"."robot", "t4"."invoice_email", "t4"."invalid_login_attempts", "t4"."last_invalid_login", "t4"."removed_tag_expiration_s", "t4"."enabled", "t4"."invoice_email_address", "t4"."given_name", "t4"."family_name", "t4"."company", "t4"."location", "t4"."maximum_queued_builds_count", "t4"."creation_date", "t4"."last_accessed" FROM "repositorypermission" AS "t1" INNER JOIN "role" AS "t2" ON ("t1"."role_id" = "t2"."id") INNER JOIN "repository" AS "t3" ON ("t1"."repository_id" = "t3"."id") INNER JOIN "user" AS "t4" ON ("t3"."namespace_user_id" = "t4"."id") INNER JOIN "user" AS "t5" ON ("t1"."user_id" = "t5"."id") WHERE ((("t3"."name" = %s) AND ("t4"."username" = %s)) AND ("t5"."id" = %s))', ['quayrepo', 'quayorg', 1]) gunicorn-registry stdout | 2025-09-26 08:36:22,792 [257] [DEBUG] [auth.permissions] Loading user permissions after deferring for: 9f776dce-7347-4b69-8bd5-3621034db23c nginx stdout | 10.129.4.11 (-) - quay [26/Sep/2025:08:36:22 +0000] "GET /v2/auth?account=quay&scope=repository%3Aquayorg%2Fquayrepo%3Apull%2Cpush&service=quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com HTTP/1.1" 200 1101 "-" "skopeo/1.14.5" (0.749 699 0.749) gunicorn-registry stdout | 2025-09-26 08:36:22,793 [255] [DEBUG] [auth.permissions] User added permission: _ResourceNeed(type='repository', namespace='quayorg', name='quayrepo', role='admin') gunicorn-registry stdout | 2025-09-26 08:36:22,794 [254] [DEBUG] [auth.permissions] User added permission: _ResourceNeed(type='repository', namespace='quayorg', name='quayrepo', role='admin') gunicorn-registry stdout | 2025-09-26 08:36:22,794 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."team_id", "t1"."user_id", "t1"."repository_id", "t1"."role_id", "t2"."id", "t2"."name", "t3"."id", "t3"."namespace_user_id", "t3"."name", "t3"."visibility_id", "t3"."description", "t3"."badge_token", "t3"."kind_id", "t3"."trust_enabled", "t3"."state", "t4"."id", "t4"."uuid", "t4"."username", "t4"."password_hash", "t4"."email", "t4"."verified", "t4"."stripe_id", "t4"."organization", "t4"."robot", "t4"."invoice_email", "t4"."invalid_login_attempts", "t4"."last_invalid_login", "t4"."removed_tag_expiration_s", "t4"."enabled", "t4"."invoice_email_address", "t4"."given_name", "t4"."family_name", "t4"."company", "t4"."location", "t4"."maximum_queued_builds_count", "t4"."creation_date", "t4"."last_accessed" FROM "repositorypermission" AS "t1" INNER JOIN "role" AS "t2" ON ("t1"."role_id" = "t2"."id") INNER JOIN "repository" AS "t3" ON ("t1"."repository_id" = "t3"."id") INNER JOIN "user" AS "t4" ON ("t3"."namespace_user_id" = "t4"."id") INNER JOIN "team" AS "t5" ON ("t1"."team_id" = "t5"."id") INNER JOIN "teammember" AS "t6" ON ("t6"."team_id" = "t5"."id") INNER JOIN "user" AS "t7" ON ("t7"."id" = "t6"."user_id") WHERE ((("t3"."name" = %s) AND ("t4"."username" = %s)) AND ("t7"."id" = %s))', ['quayrepo', 'quayorg', 1]) gunicorn-registry stdout | 2025-09-26 08:36:22,795 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['quayorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,795 [254] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."team_id", "t1"."user_id", "t1"."repository_id", "t1"."role_id", "t2"."id", "t2"."name", "t3"."id", "t3"."namespace_user_id", "t3"."name", "t3"."visibility_id", "t3"."description", "t3"."badge_token", "t3"."kind_id", "t3"."trust_enabled", "t3"."state", "t4"."id", "t4"."uuid", "t4"."username", "t4"."password_hash", "t4"."email", "t4"."verified", "t4"."stripe_id", "t4"."organization", "t4"."robot", "t4"."invoice_email", "t4"."invalid_login_attempts", "t4"."last_invalid_login", "t4"."removed_tag_expiration_s", "t4"."enabled", "t4"."invoice_email_address", "t4"."given_name", "t4"."family_name", "t4"."company", "t4"."location", "t4"."maximum_queued_builds_count", "t4"."creation_date", "t4"."last_accessed" FROM "repositorypermission" AS "t1" INNER JOIN "role" AS "t2" ON ("t1"."role_id" = "t2"."id") INNER JOIN "repository" AS "t3" ON ("t1"."repository_id" = "t3"."id") INNER JOIN "user" AS "t4" ON ("t3"."namespace_user_id" = "t4"."id") INNER JOIN "team" AS "t5" ON ("t1"."team_id" = "t5"."id") INNER JOIN "teammember" AS "t6" ON ("t6"."team_id" = "t5"."id") INNER JOIN "user" AS "t7" ON ("t7"."id" = "t6"."user_id") WHERE ((("t3"."name" = %s) AND ("t4"."username" = %s)) AND ("t7"."id" = %s))', ['quayrepo', 'quayorg', 1]) gunicorn-registry stdout | 2025-09-26 08:36:22,796 [251] [DEBUG] [data.userevent] Published user event docker-cli: {'action': 'push_start', 'namespace': 'quayorg', 'repository': 'quayrepo'} gunicorn-registry stdout | 2025-09-26 08:36:22,797 [256] [DEBUG] [auth.permissions] Loading user permissions after deferring for: 9f776dce-7347-4b69-8bd5-3621034db23c gunicorn-registry stdout | 2025-09-26 08:36:22,799 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['quayorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,800 [254] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['quayorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,801 [254] [DEBUG] [auth.permissions] Loading user permissions after deferring for: 9f776dce-7347-4b69-8bd5-3621034db23c gunicorn-registry stdout | 2025-09-26 08:36:22,801 [255] [DEBUG] [auth.permissions] Loading user permissions after deferring for: 9f776dce-7347-4b69-8bd5-3621034db23c gunicorn-registry stdout | 2025-09-26 08:36:22,806 [257] [DEBUG] [app] Ending request: urn:request:5ca2cd8e-4c52-4fc1-b2c0-2bbbaf69a7da (/v2/auth) {'endpoint': 'v2.generate_registry_jwt', 'request_id': 'urn:request:5ca2cd8e-4c52-4fc1-b2c0-2bbbaf69a7da', 'remote_addr': '10.129.4.11', 'http_method': 'GET', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/auth?account=quay&scope=repository:quayorg/quayrepo:pull,push&service=quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com', 'path': '/v2/auth', 'parameters': {'account': 'quay', 'scope': 'repository:quayorg/quayrepo:pull,push', 'service': 'quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:22,807 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:22,808 [256] [DEBUG] [app] Ending request: urn:request:cfc5a0a5-6cf3-448f-9d53-1bfb71c30a2f (/v2/auth) {'endpoint': 'v2.generate_registry_jwt', 'request_id': 'urn:request:cfc5a0a5-6cf3-448f-9d53-1bfb71c30a2f', 'remote_addr': '10.129.4.11', 'http_method': 'GET', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/auth?account=quay&scope=repository:quayorg/quayrepo:pull,push&service=quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com', 'path': '/v2/auth', 'parameters': {'account': 'quay', 'scope': 'repository:quayorg/quayrepo:pull,push', 'service': 'quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:22,809 [256] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:22,809 [256] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:22,809 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:22,809 [256] [INFO] [gunicorn.access] 10.129.4.11 - quay [26/Sep/2025:08:36:22 +0000] "GET /v2/auth?account=quay&scope=repository%3Aquayorg%2Fquayrepo%3Apull%2Cpush&service=quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com HTTP/1.1" 200 1101 "-" "skopeo/1.14.5" gunicorn-registry stdout | 2025-09-26 08:36:22,809 [257] [INFO] [gunicorn.access] 10.129.4.11 - quay [26/Sep/2025:08:36:22 +0000] "GET /v2/auth?account=quay&scope=repository%3Aquayorg%2Fquayrepo%3Apull%2Cpush&service=quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com HTTP/1.1" 200 1101 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - quay [26/Sep/2025:08:36:22 +0000] "GET /v2/auth?account=quay&scope=repository%3Aquayorg%2Fquayrepo%3Apull%2Cpush&service=quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com HTTP/1.1" 200 1101 "-" "skopeo/1.14.5" (0.767 699 0.767) nginx stdout | 10.129.4.11 (-) - quay [26/Sep/2025:08:36:22 +0000] "GET /v2/auth?account=quay&scope=repository%3Aquayorg%2Fquayrepo%3Apull%2Cpush&service=quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com HTTP/1.1" 200 1101 "-" "skopeo/1.14.5" (0.769 699 0.769) gunicorn-registry stdout | 2025-09-26 08:36:22,811 [256] [DEBUG] [data.userevent] Published user event docker-cli: {'action': 'push_start', 'namespace': 'quayorg', 'repository': 'quayrepo'} gunicorn-registry stdout | 2025-09-26 08:36:22,812 [254] [DEBUG] [app] Ending request: urn:request:73c873ad-b408-4525-8b21-438ca9bb2bdd (/v2/auth) {'endpoint': 'v2.generate_registry_jwt', 'request_id': 'urn:request:73c873ad-b408-4525-8b21-438ca9bb2bdd', 'remote_addr': '10.129.4.11', 'http_method': 'GET', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/auth?account=quay&scope=repository:quayorg/quayrepo:pull,push&service=quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com', 'path': '/v2/auth', 'parameters': {'account': 'quay', 'scope': 'repository:quayorg/quayrepo:pull,push', 'service': 'quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:22,813 [257] [DEBUG] [data.userevent] Published user event docker-cli: {'action': 'push_start', 'namespace': 'quayorg', 'repository': 'quayrepo'} gunicorn-registry stdout | 2025-09-26 08:36:22,813 [254] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:22,813 [254] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:22,814 [255] [DEBUG] [app] Ending request: urn:request:1d3de5f7-ff33-428c-9c1d-bc644cd9c368 (/v2/auth) {'endpoint': 'v2.generate_registry_jwt', 'request_id': 'urn:request:1d3de5f7-ff33-428c-9c1d-bc644cd9c368', 'remote_addr': '10.129.4.11', 'http_method': 'GET', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/auth?account=quay&scope=repository:quayorg/quayrepo:pull,push&service=quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com', 'path': '/v2/auth', 'parameters': {'account': 'quay', 'scope': 'repository:quayorg/quayrepo:pull,push', 'service': 'quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:22,814 [254] [INFO] [gunicorn.access] 10.129.4.11 - quay [26/Sep/2025:08:36:22 +0000] "GET /v2/auth?account=quay&scope=repository%3Aquayorg%2Fquayrepo%3Apull%2Cpush&service=quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com HTTP/1.1" 200 1101 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - quay [26/Sep/2025:08:36:22 +0000] "GET /v2/auth?account=quay&scope=repository%3Aquayorg%2Fquayrepo%3Apull%2Cpush&service=quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com HTTP/1.1" 200 1101 "-" "skopeo/1.14.5" (0.770 699 0.769) gunicorn-registry stdout | 2025-09-26 08:36:22,814 [255] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:22,814 [255] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.129.4.11 (-) - quay [26/Sep/2025:08:36:22 +0000] "GET /v2/auth?account=quay&scope=repository%3Aquayorg%2Fquayrepo%3Apull%2Cpush&service=quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com HTTP/1.1" 200 1101 "-" "skopeo/1.14.5" (0.771 699 0.771) gunicorn-registry stdout | 2025-09-26 08:36:22,815 [255] [INFO] [gunicorn.access] 10.129.4.11 - quay [26/Sep/2025:08:36:22 +0000] "GET /v2/auth?account=quay&scope=repository%3Aquayorg%2Fquayrepo%3Apull%2Cpush&service=quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com HTTP/1.1" 200 1101 "-" "skopeo/1.14.5" gunicorn-registry stdout | 2025-09-26 08:36:22,816 [254] [DEBUG] [data.userevent] Published user event docker-cli: {'action': 'push_start', 'namespace': 'quayorg', 'repository': 'quayrepo'} gunicorn-registry stdout | 2025-09-26 08:36:22,818 [255] [DEBUG] [data.userevent] Published user event docker-cli: {'action': 'push_start', 'namespace': 'quayorg', 'repository': 'quayrepo'} gunicorn-registry stdout | 2025-09-26 08:36:22,835 [251] [DEBUG] [app] Starting request: urn:request:59bd3fe3-6dc8-4c60-b86b-209260c65592 (/v2/quayorg/quayrepo/blobs/sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:22,835 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160', 'namespace_name': 'quayorg', 'repo_name': 'quayrepo'} gunicorn-registry stdout | 2025-09-26 08:36:22,835 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:22,835 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:22,836 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."kid", "t1"."service", "t1"."jwk", "t1"."metadata", "t1"."created_date", "t1"."expiration_date", "t1"."rotation_duration", "t1"."approval_id" FROM "servicekey" AS "t1" LEFT OUTER JOIN "servicekeyapproval" AS "t2" ON ("t1"."approval_id" = "t2"."id") WHERE ((((NOT ("t1"."approval_id" IS %s) AND (("t1"."expiration_date" > %s) OR ("t1"."expiration_date" IS %s))) AND ("t1"."service" = %s)) AND (NOT (("t1"."service" = %s) AND ("t1"."expiration_date" <= %s)) OR NOT ((("t1"."service" = %s) AND ("t1"."approval_id" IS %s)) AND ("t1"."created_date" <= %s)))) AND (NOT ("t1"."expiration_date" <= %s) OR ("t1"."expiration_date" IS %s)))', [None, datetime.datetime(2025, 9, 26, 8, 36, 22, 835749), None, 'quay', 'quay', datetime.datetime(2025, 9, 26, 8, 36, 22, 835784), 'quay', None, datetime.datetime(2025, 9, 25, 8, 36, 22, 835817), datetime.datetime(2025, 9, 19, 8, 36, 22, 835840), None]) gunicorn-registry stdout | 2025-09-26 08:36:22,870 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:22,871 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:22,871 [256] [DEBUG] [app] Starting request: urn:request:76728632-d602-477f-851d-c09cb1d19ba9 (/v2/quayorg/quayrepo/blobs/sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:22,871 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:22,871 [256] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1', 'namespace_name': 'quayorg', 'repo_name': 'quayrepo'} gunicorn-registry stdout | 2025-09-26 08:36:22,871 [256] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:22,871 [256] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:22,871 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'quayorg/quayrepo': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:22,871 [251] [DEBUG] [endpoints.v2] Checking permission for repo: quayorg/quayrepo gunicorn-registry stdout | 2025-09-26 08:36:22,872 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,872 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."kid", "t1"."service", "t1"."jwk", "t1"."metadata", "t1"."created_date", "t1"."expiration_date", "t1"."rotation_duration", "t1"."approval_id" FROM "servicekey" AS "t1" LEFT OUTER JOIN "servicekeyapproval" AS "t2" ON ("t1"."approval_id" = "t2"."id") WHERE ((((NOT ("t1"."approval_id" IS %s) AND (("t1"."expiration_date" > %s) OR ("t1"."expiration_date" IS %s))) AND ("t1"."service" = %s)) AND (NOT (("t1"."service" = %s) AND ("t1"."expiration_date" <= %s)) OR NOT ((("t1"."service" = %s) AND ("t1"."approval_id" IS %s)) AND ("t1"."created_date" <= %s)))) AND (NOT ("t1"."expiration_date" <= %s) OR ("t1"."expiration_date" IS %s)))', [None, datetime.datetime(2025, 9, 26, 8, 36, 22, 871780), None, 'quay', 'quay', datetime.datetime(2025, 9, 26, 8, 36, 22, 871816), 'quay', None, datetime.datetime(2025, 9, 25, 8, 36, 22, 871847), datetime.datetime(2025, 9, 19, 8, 36, 22, 871870), None]) gunicorn-registry stdout | 2025-09-26 08:36:22,881 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['quayorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,883 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['quayorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:22,884 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__quayorg_quayrepo_sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160_2 gunicorn-registry stdout | 2025-09-26 08:36:22,887 [252] [DEBUG] [app] Starting request: urn:request:9c78fad9-087a-4e84-a794-9e5b4055acc8 (/v2/quayorg/quayrepo/blobs/sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:22,887 [252] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d', 'namespace_name': 'quayorg', 'repo_name': 'quayrepo'} gunicorn-registry stdout | 2025-09-26 08:36:22,887 [252] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:22,887 [252] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:22,889 [256] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:22,889 [256] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:22,889 [256] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:22,889 [256] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'quayorg/quayrepo': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:22,889 [256] [DEBUG] [endpoints.v2] Checking permission for repo: quayorg/quayrepo gunicorn-registry stdout | 2025-09-26 08:36:22,891 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__quayorg_quayrepo_sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:22,893 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['quayorg', 'quayrepo', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,894 [252] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."kid", "t1"."service", "t1"."jwk", "t1"."metadata", "t1"."created_date", "t1"."expiration_date", "t1"."rotation_duration", "t1"."approval_id" FROM "servicekey" AS "t1" LEFT OUTER JOIN "servicekeyapproval" AS "t2" ON ("t1"."approval_id" = "t2"."id") WHERE ((((NOT ("t1"."approval_id" IS %s) AND (("t1"."expiration_date" > %s) OR ("t1"."expiration_date" IS %s))) AND ("t1"."service" = %s)) AND (NOT (("t1"."service" = %s) AND ("t1"."expiration_date" <= %s)) OR NOT ((("t1"."service" = %s) AND ("t1"."approval_id" IS %s)) AND ("t1"."created_date" <= %s)))) AND (NOT ("t1"."expiration_date" <= %s) OR ("t1"."expiration_date" IS %s)))', [None, datetime.datetime(2025, 9, 26, 8, 36, 22, 892881), None, 'quay', 'quay', datetime.datetime(2025, 9, 26, 8, 36, 22, 892922), 'quay', None, datetime.datetime(2025, 9, 25, 8, 36, 22, 892950), datetime.datetime(2025, 9, 19, 8, 36, 22, 892971), None]) gunicorn-registry stdout | 2025-09-26 08:36:22,895 [252] [DEBUG] [peewee.pool] No connection available in pool. gunicorn-registry stdout | 2025-09-26 08:36:22,895 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,900 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,902 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,912 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,917 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['quayorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,920 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,926 [252] [DEBUG] [peewee.pool] Created new connection 140607466707904. gunicorn-registry stdout | 2025-09-26 08:36:22,929 [256] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['quayorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:22,929 [256] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__quayorg_quayrepo_sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1_2 gunicorn-registry stdout | 2025-09-26 08:36:22,930 [256] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__quayorg_quayrepo_sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:22,931 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['quayorg', 'quayrepo', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,932 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__quayorg_quayrepo_sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160_2: None gunicorn-registry stdout | 2025-09-26 08:36:22,932 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__quayorg_quayrepo_sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160_2: None gunicorn-registry stdout | 2025-09-26 08:36:22,932 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:22,933 [251] [DEBUG] [app] Ending request: urn:request:59bd3fe3-6dc8-4c60-b86b-209260c65592 (/v2/quayorg/quayrepo/blobs/sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:59bd3fe3-6dc8-4c60-b86b-209260c65592', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/quayorg/quayrepo/blobs/sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160', 'path': '/v2/quayorg/quayrepo/blobs/sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:22,934 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:22,934 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:22,934 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:22 +0000] "HEAD /v2/quayorg/quayrepo/blobs/sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:22 +0000] "HEAD /v2/quayorg/quayrepo/blobs/sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.102 1722 0.102) gunicorn-registry stdout | 2025-09-26 08:36:22,942 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,953 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,955 [252] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:22,956 [252] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:22,956 [252] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:22,956 [252] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'quayorg/quayrepo': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:22,956 [252] [DEBUG] [endpoints.v2] Checking permission for repo: quayorg/quayrepo gunicorn-registry stdout | 2025-09-26 08:36:22,957 [252] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,966 [256] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,970 [252] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['quayorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,975 [256] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,983 [252] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['quayorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:22,984 [252] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__quayorg_quayrepo_sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d_2 gunicorn-registry stdout | 2025-09-26 08:36:22,984 [252] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__quayorg_quayrepo_sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:22,986 [252] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['quayorg', 'quayrepo', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:22,988 [256] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__quayorg_quayrepo_sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1_2: None gunicorn-registry stdout | 2025-09-26 08:36:22,988 [256] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__quayorg_quayrepo_sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1_2: None gunicorn-registry stdout | 2025-09-26 08:36:22,989 [256] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:22,989 [256] [DEBUG] [app] Ending request: urn:request:76728632-d602-477f-851d-c09cb1d19ba9 (/v2/quayorg/quayrepo/blobs/sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:76728632-d602-477f-851d-c09cb1d19ba9', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/quayorg/quayrepo/blobs/sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1', 'path': '/v2/quayorg/quayrepo/blobs/sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:22,990 [256] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:22,990 [256] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:22,990 [256] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:22 +0000] "HEAD /v2/quayorg/quayrepo/blobs/sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:22 +0000] "HEAD /v2/quayorg/quayrepo/blobs/sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.141 1722 0.141) gunicorn-registry stdout | 2025-09-26 08:36:23,000 [252] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,012 [252] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,021 [252] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:23,022 [252] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['public', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,024 [252] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,027 [252] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,029 [252] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__quayorg_quayrepo_sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d_2: None gunicorn-registry stdout | 2025-09-26 08:36:23,030 [252] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__quayorg_quayrepo_sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d_2: None gunicorn-registry stdout | 2025-09-26 08:36:23,031 [252] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:23,033 [252] [DEBUG] [app] Ending request: urn:request:9c78fad9-087a-4e84-a794-9e5b4055acc8 (/v2/quayorg/quayrepo/blobs/sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:9c78fad9-087a-4e84-a794-9e5b4055acc8', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/quayorg/quayrepo/blobs/sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d', 'path': '/v2/quayorg/quayrepo/blobs/sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:23,034 [252] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:23,035 [252] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:23 +0000] "HEAD /v2/quayorg/quayrepo/blobs/sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.181 1722 0.181) gunicorn-registry stdout | 2025-09-26 08:36:23,036 [252] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:23 +0000] "HEAD /v2/quayorg/quayrepo/blobs/sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d HTTP/1.1" 404 0 "-" "skopeo/1.14.5" gunicorn-registry stdout | 2025-09-26 08:36:23,247 [256] [DEBUG] [app] Starting request: urn:request:d794c136-f848-4761-ac79-dc94d46bfcd3 (/v2/quayorg/quayrepo/blobs/sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:23,247 [256] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1', 'namespace_name': 'quayorg', 'repo_name': 'quayrepo'} gunicorn-registry stdout | 2025-09-26 08:36:23,247 [256] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:23,247 [256] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:23,248 [256] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:23,248 [256] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:23,248 [256] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:23,248 [256] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'quayorg/quayrepo': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:23,248 [256] [DEBUG] [endpoints.v2] Checking permission for repo: quayorg/quayrepo gunicorn-registry stdout | 2025-09-26 08:36:23,249 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,251 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['quayorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,252 [256] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['quayorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:23,252 [256] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__quayorg_quayrepo_sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1_2 gunicorn-registry stdout | 2025-09-26 08:36:23,252 [256] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__quayorg_quayrepo_sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:23,253 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['quayorg', 'quayrepo', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,254 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,254 [258] [DEBUG] [app] Starting request: urn:request:ce4bcd3b-7d56-4be0-b3f5-62ca84f3b646 (/v2/quayorg/quayrepo/blobs/sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:23,254 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d', 'namespace_name': 'quayorg', 'repo_name': 'quayrepo'} gunicorn-registry stdout | 2025-09-26 08:36:23,254 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:23,254 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:23,255 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,256 [256] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,256 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."kid", "t1"."service", "t1"."jwk", "t1"."metadata", "t1"."created_date", "t1"."expiration_date", "t1"."rotation_duration", "t1"."approval_id" FROM "servicekey" AS "t1" LEFT OUTER JOIN "servicekeyapproval" AS "t2" ON ("t1"."approval_id" = "t2"."id") WHERE ((((NOT ("t1"."approval_id" IS %s) AND (("t1"."expiration_date" > %s) OR ("t1"."expiration_date" IS %s))) AND ("t1"."service" = %s)) AND (NOT (("t1"."service" = %s) AND ("t1"."expiration_date" <= %s)) OR NOT ((("t1"."service" = %s) AND ("t1"."approval_id" IS %s)) AND ("t1"."created_date" <= %s)))) AND (NOT ("t1"."expiration_date" <= %s) OR ("t1"."expiration_date" IS %s)))', [None, datetime.datetime(2025, 9, 26, 8, 36, 23, 255710), None, 'quay', 'quay', datetime.datetime(2025, 9, 26, 8, 36, 23, 255742), 'quay', None, datetime.datetime(2025, 9, 25, 8, 36, 23, 255765), datetime.datetime(2025, 9, 19, 8, 36, 23, 255782), None]) gunicorn-registry stdout | 2025-09-26 08:36:23,257 [258] [DEBUG] [peewee.pool] No connection available in pool. gunicorn-registry stdout | 2025-09-26 08:36:23,257 [256] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,258 [256] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__quayorg_quayrepo_sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1_2: None gunicorn-registry stdout | 2025-09-26 08:36:23,258 [256] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__quayorg_quayrepo_sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1_2: None gunicorn-registry stdout | 2025-09-26 08:36:23,258 [256] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:23,258 [256] [DEBUG] [app] Ending request: urn:request:d794c136-f848-4761-ac79-dc94d46bfcd3 (/v2/quayorg/quayrepo/blobs/sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:d794c136-f848-4761-ac79-dc94d46bfcd3', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/quayorg/quayrepo/blobs/sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1', 'path': '/v2/quayorg/quayrepo/blobs/sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:23,258 [256] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:23,258 [256] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:23,258 [256] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:23 +0000] "HEAD /v2/quayorg/quayrepo/blobs/sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:23 +0000] "HEAD /v2/quayorg/quayrepo/blobs/sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.013 1722 0.013) gunicorn-registry stdout | 2025-09-26 08:36:23,261 [258] [DEBUG] [peewee.pool] Created new connection 140607466707904. gunicorn-registry stdout | 2025-09-26 08:36:23,272 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:23,272 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:23,272 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:23,272 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'quayorg/quayrepo': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:23,272 [258] [DEBUG] [endpoints.v2] Checking permission for repo: quayorg/quayrepo gunicorn-registry stdout | 2025-09-26 08:36:23,273 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,275 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['quayorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,276 [258] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['quayorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:23,276 [258] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__quayorg_quayrepo_sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d_2 gunicorn-registry stdout | 2025-09-26 08:36:23,276 [258] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__quayorg_quayrepo_sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:23,278 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['quayorg', 'quayrepo', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,280 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,280 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,282 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:23,283 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['public', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,284 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,286 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,287 [258] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__quayorg_quayrepo_sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d_2: None gunicorn-registry stdout | 2025-09-26 08:36:23,287 [258] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__quayorg_quayrepo_sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d_2: None gunicorn-registry stdout | 2025-09-26 08:36:23,287 [258] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:23,287 [258] [DEBUG] [app] Ending request: urn:request:ce4bcd3b-7d56-4be0-b3f5-62ca84f3b646 (/v2/quayorg/quayrepo/blobs/sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:ce4bcd3b-7d56-4be0-b3f5-62ca84f3b646', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/quayorg/quayrepo/blobs/sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d', 'path': '/v2/quayorg/quayrepo/blobs/sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:23,288 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:23,288 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:23,288 [258] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:23 +0000] "HEAD /v2/quayorg/quayrepo/blobs/sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:23 +0000] "HEAD /v2/quayorg/quayrepo/blobs/sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.036 1722 0.036) gunicorn-registry stdout | 2025-09-26 08:36:23,300 [258] [DEBUG] [app] Starting request: urn:request:7a62666b-afa4-4567-9c37-39c7838cf2c5 (/v2/quayorg/quayrepo/blobs/sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:23,300 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160', 'namespace_name': 'quayorg', 'repo_name': 'quayrepo'} gunicorn-registry stdout | 2025-09-26 08:36:23,300 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:23,300 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:23,301 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:23,301 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:23,301 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:23,301 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'quayorg/quayrepo': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:23,302 [258] [DEBUG] [endpoints.v2] Checking permission for repo: quayorg/quayrepo gunicorn-registry stdout | 2025-09-26 08:36:23,302 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,304 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['quayorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,304 [258] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['quayorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:23,305 [258] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__quayorg_quayrepo_sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160_2 gunicorn-registry stdout | 2025-09-26 08:36:23,305 [258] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__quayorg_quayrepo_sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:23,306 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['quayorg', 'quayrepo', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,307 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,307 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,308 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,310 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,311 [258] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__quayorg_quayrepo_sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160_2: None gunicorn-registry stdout | 2025-09-26 08:36:23,311 [258] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__quayorg_quayrepo_sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160_2: None gunicorn-registry stdout | 2025-09-26 08:36:23,311 [258] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:23,311 [258] [DEBUG] [app] Ending request: urn:request:7a62666b-afa4-4567-9c37-39c7838cf2c5 (/v2/quayorg/quayrepo/blobs/sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:7a62666b-afa4-4567-9c37-39c7838cf2c5', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/quayorg/quayrepo/blobs/sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160', 'path': '/v2/quayorg/quayrepo/blobs/sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:23,311 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:23,311 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:23,311 [258] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:23 +0000] "HEAD /v2/quayorg/quayrepo/blobs/sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:23 +0000] "HEAD /v2/quayorg/quayrepo/blobs/sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.011 1722 0.012) gunicorn-registry stdout | 2025-09-26 08:36:23,328 [258] [DEBUG] [app] Starting request: urn:request:77c1c0e5-024f-439d-ba16-60c72b9ca86c (/v2/quayorg/quayrepo/blobs/sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:23,328 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 'namespace_name': 'quayorg', 'repo_name': 'quayrepo'} gunicorn-registry stdout | 2025-09-26 08:36:23,328 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:23,328 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:23,329 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:23,329 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:23,329 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:23,329 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'quayorg/quayrepo': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:23,329 [258] [DEBUG] [endpoints.v2] Checking permission for repo: quayorg/quayrepo gunicorn-registry stdout | 2025-09-26 08:36:23,330 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,331 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['quayorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,332 [258] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['quayorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:23,332 [258] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__quayorg_quayrepo_sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9_2 gunicorn-registry stdout | 2025-09-26 08:36:23,332 [258] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__quayorg_quayrepo_sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:23,333 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['quayorg', 'quayrepo', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,334 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,335 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,336 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,337 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,338 [258] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__quayorg_quayrepo_sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9_2: None gunicorn-registry stdout | 2025-09-26 08:36:23,338 [258] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__quayorg_quayrepo_sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9_2: None gunicorn-registry stdout | 2025-09-26 08:36:23,339 [258] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:23,339 [258] [DEBUG] [app] Ending request: urn:request:77c1c0e5-024f-439d-ba16-60c72b9ca86c (/v2/quayorg/quayrepo/blobs/sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:77c1c0e5-024f-439d-ba16-60c72b9ca86c', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/quayorg/quayrepo/blobs/sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 'path': '/v2/quayorg/quayrepo/blobs/sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:23,339 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:23,339 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:23 +0000] "HEAD /v2/quayorg/quayrepo/blobs/sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.011 1722 0.011) gunicorn-registry stdout | 2025-09-26 08:36:23,339 [258] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:23 +0000] "HEAD /v2/quayorg/quayrepo/blobs/sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" gunicorn-registry stdout | 2025-09-26 08:36:23,367 [251] [DEBUG] [app] Starting request: urn:request:bdc13bda-a437-4269-875f-2be76dd59582 (/v2/quayorg/quayrepo/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:23,367 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'quayorg', 'repo_name': 'quayrepo'} gunicorn-registry stdout | 2025-09-26 08:36:23,367 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:23,367 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:23,368 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:23,368 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:23,368 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:23,368 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'quayorg/quayrepo': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:23,368 [251] [DEBUG] [endpoints.v2] Checking permission for repo: quayorg/quayrepo gunicorn-registry stdout | 2025-09-26 08:36:23,369 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['quayorg', 'quayrepo', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,370 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,371 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,372 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['quayorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,373 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,376 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['quayorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,378 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['quayorg']) gunicorn-registry stdout | 2025-09-26 08:36:23,379 [258] [DEBUG] [app] Starting request: urn:request:ad2ca30f-a956-49a2-ac38-0c1c4e8fb5f3 (/v2/quayorg/quayrepo/blobs/sha256:cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:23,379 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a', 'namespace_name': 'quayorg', 'repo_name': 'quayrepo'} gunicorn-registry stdout | 2025-09-26 08:36:23,379 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:23,379 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:23,380 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:23,380 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:23,380 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:23,380 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'quayorg/quayrepo': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:23,380 [251] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/endpoints.json gunicorn-registry stdout | 2025-09-26 08:36:23,380 [258] [DEBUG] [endpoints.v2] Checking permission for repo: quayorg/quayrepo gunicorn-registry stdout | 2025-09-26 08:36:23,381 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,382 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['quayorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,384 [258] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['quayorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:23,384 [258] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__quayorg_quayrepo_sha256:cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a_2 gunicorn-registry stdout | 2025-09-26 08:36:23,384 [258] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__quayorg_quayrepo_sha256:cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:23,385 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['quayorg', 'quayrepo', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,386 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,387 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,388 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,389 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,390 [258] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__quayorg_quayrepo_sha256:cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a_2: None gunicorn-registry stdout | 2025-09-26 08:36:23,390 [258] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__quayorg_quayrepo_sha256:cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a_2: None gunicorn-registry stdout | 2025-09-26 08:36:23,390 [258] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:23,390 [258] [DEBUG] [app] Ending request: urn:request:ad2ca30f-a956-49a2-ac38-0c1c4e8fb5f3 (/v2/quayorg/quayrepo/blobs/sha256:cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:ad2ca30f-a956-49a2-ac38-0c1c4e8fb5f3', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/quayorg/quayrepo/blobs/sha256:cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a', 'path': '/v2/quayorg/quayrepo/blobs/sha256:cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:23,391 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:23,391 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:23,391 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:23 +0000] "HEAD /v2/quayorg/quayrepo/blobs/sha256:cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:23 +0000] "HEAD /v2/quayorg/quayrepo/blobs/sha256:cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.013 1722 0.013) gunicorn-registry stdout | 2025-09-26 08:36:23,402 [251] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/sdk-default-configuration.json gunicorn-registry stdout | 2025-09-26 08:36:23,403 [251] [DEBUG] [botocore.hooks] Event choose-service-name: calling handler gunicorn-registry stdout | 2025-09-26 08:36:23,416 [251] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/s3/2006-03-01/service-2.json gunicorn-registry stdout | 2025-09-26 08:36:23,437 [251] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/s3/2006-03-01/endpoint-rule-set-1.json gunicorn-registry stdout | 2025-09-26 08:36:23,440 [251] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/partitions.json gunicorn-registry stdout | 2025-09-26 08:36:23,441 [251] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:23,441 [251] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler ._handler at 0x7fe1bb6fab60> gunicorn-registry stdout | 2025-09-26 08:36:23,486 [251] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:23,489 [251] [DEBUG] [botocore.endpoint] Setting s3 timeout as (60, 60) gunicorn-registry stdout | 2025-09-26 08:36:23,491 [251] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/_retry.json gunicorn-registry stdout | 2025-09-26 08:36:23,492 [251] [DEBUG] [botocore.client] Registering retry handlers for service: s3 gunicorn-registry stdout | 2025-09-26 08:36:23,492 [251] [DEBUG] [botocore.utils] Registering S3 region redirector handler gunicorn-registry stdout | 2025-09-26 08:36:23,508 [251] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/boto3/data/s3/2006-03-01/resources-1.json gunicorn-registry stdout | 2025-09-26 08:36:23,509 [251] [DEBUG] [botocore.hooks] Event choose-service-name: calling handler gunicorn-registry stdout | 2025-09-26 08:36:23,512 [251] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:23,512 [251] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler ._handler at 0x7fe1bb6fab60> gunicorn-registry stdout | 2025-09-26 08:36:23,512 [251] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:23,514 [251] [DEBUG] [botocore.endpoint] Setting s3 timeout as (60, 60) gunicorn-registry stdout | 2025-09-26 08:36:23,515 [251] [DEBUG] [botocore.client] Registering retry handlers for service: s3 gunicorn-registry stdout | 2025-09-26 08:36:23,515 [251] [DEBUG] [botocore.utils] Registering S3 region redirector handler gunicorn-registry stdout | 2025-09-26 08:36:23,516 [251] [DEBUG] [boto3.resources.factory] Loading s3:s3 gunicorn-registry stdout | 2025-09-26 08:36:23,517 [251] [DEBUG] [boto3.resources.factory] Loading s3:Bucket gunicorn-registry stdout | 2025-09-26 08:36:23,517 [251] [DEBUG] [boto3.resources.model] Renaming Bucket attribute name gunicorn-registry stdout | 2025-09-26 08:36:23,518 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Bucket: calling handler ._handler at 0x7fe1bb6fae80> gunicorn-registry stdout | 2025-09-26 08:36:23,518 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:23,518 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:23,518 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:23,518 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:23,518 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:23,518 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:23,519 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:23,519 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:23,520 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:23,520 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:23,520 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:23,520 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:23,520 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:23,520 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadBucket) with params: {'url_path': '', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:23,521 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadBucket: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:23,521 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadBucket: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:23,521 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:23,521 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:23,521 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:23,521 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083623Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:23,521 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083623Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 56f49b6dc09aa053059b4f203f31900ae16474e7b5c807742dcda9843cde70d6 gunicorn-registry stdout | 2025-09-26 08:36:23,521 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 6e933e84cea0686da6deff6bdbf981b23f6be4735b8c11ef1a2bfef9a8457046 gunicorn-registry stdout | 2025-09-26 08:36:23,521 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:23,522 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:23,523 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:23,524 [251] [DEBUG] [urllib3.connectionpool] Starting new HTTPS connection (1): s3.openshift-storage.svc.cluster.local:443 gunicorn-registry stdout | 2025-09-26 08:36:23,567 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:23,567 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l88ec-bz1dqj-gye', 'x-amz-id-2': 'mg0l88ec-bz1dqj-gye', 'Date': 'Fri, 26 Sep 2025 08:36:23 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:23,567 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:23,568 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:23,568 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:23,568 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadBucket: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:23,568 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:23,569 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "imagestoragelocation" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:23,571 [251] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [1, 'ad61bdb4-754a-404b-b962-308e88e0ee5b', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 36, 23, 571172)]) gunicorn-registry stdout | 2025-09-26 08:36:23,574 [251] [DEBUG] [app] Ending request: urn:request:bdc13bda-a437-4269-875f-2be76dd59582 (/v2/quayorg/quayrepo/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:bdc13bda-a437-4269-875f-2be76dd59582', 'remote_addr': '10.129.4.11', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/quayorg/quayrepo/blobs/uploads/', 'path': '/v2/quayorg/quayrepo/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:23,574 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:23,574 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:23,574 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:23 +0000] "POST /v2/quayorg/quayrepo/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:23 +0000] "POST /v2/quayorg/quayrepo/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.208 1701 0.208) gunicorn-registry stdout | 2025-09-26 08:36:24,081 [258] [DEBUG] [app] Starting request: urn:request:41168496-942d-4d00-a95b-18518433cea7 (/v2/quayorg/quayrepo/blobs/uploads/cdb8b9b4-365a-4b8d-bb06-b1f544fc0fc5) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:24,081 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'cdb8b9b4-365a-4b8d-bb06-b1f544fc0fc5', 'namespace_name': 'quayorg', 'repo_name': 'quayrepo'} gunicorn-registry stdout | 2025-09-26 08:36:24,081 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:24,082 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:24,082 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:24,082 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:24,082 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:24,083 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'quayorg/quayrepo': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:24,083 [258] [DEBUG] [endpoints.v2] Checking permission for repo: quayorg/quayrepo gunicorn-registry stdout | 2025-09-26 08:36:24,084 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['quayorg', 'quayrepo', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:24,089 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:24,090 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:24,092 [258] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:24,093 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['quayorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:24,094 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:24,095 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['quayorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:24,096 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['quayorg']) gunicorn-registry stdout | 2025-09-26 08:36:24,097 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['cdb8b9b4-365a-4b8d-bb06-b1f544fc0fc5', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:24,098 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:24,099 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:24,100 [258] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/endpoints.json gunicorn-registry stdout | 2025-09-26 08:36:24,117 [258] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/sdk-default-configuration.json gunicorn-registry stdout | 2025-09-26 08:36:24,117 [258] [DEBUG] [botocore.hooks] Event choose-service-name: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,128 [258] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/s3/2006-03-01/service-2.json gunicorn-registry stdout | 2025-09-26 08:36:24,148 [258] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/s3/2006-03-01/endpoint-rule-set-1.json gunicorn-registry stdout | 2025-09-26 08:36:24,151 [258] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/partitions.json gunicorn-registry stdout | 2025-09-26 08:36:24,153 [258] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,154 [258] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler ._handler at 0x7fe1bb6fab60> gunicorn-registry stdout | 2025-09-26 08:36:24,195 [258] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,197 [258] [DEBUG] [botocore.endpoint] Setting s3 timeout as (60, 60) gunicorn-registry stdout | 2025-09-26 08:36:24,200 [258] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/_retry.json gunicorn-registry stdout | 2025-09-26 08:36:24,200 [258] [DEBUG] [botocore.client] Registering retry handlers for service: s3 gunicorn-registry stdout | 2025-09-26 08:36:24,201 [258] [DEBUG] [botocore.utils] Registering S3 region redirector handler gunicorn-registry stdout | 2025-09-26 08:36:24,213 [258] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/boto3/data/s3/2006-03-01/resources-1.json gunicorn-registry stdout | 2025-09-26 08:36:24,214 [258] [DEBUG] [botocore.hooks] Event choose-service-name: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,220 [258] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,220 [258] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler ._handler at 0x7fe1bb6fab60> gunicorn-registry stdout | 2025-09-26 08:36:24,220 [258] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,222 [258] [DEBUG] [botocore.endpoint] Setting s3 timeout as (60, 60) gunicorn-registry stdout | 2025-09-26 08:36:24,224 [258] [DEBUG] [botocore.client] Registering retry handlers for service: s3 gunicorn-registry stdout | 2025-09-26 08:36:24,224 [258] [DEBUG] [botocore.utils] Registering S3 region redirector handler gunicorn-registry stdout | 2025-09-26 08:36:24,224 [258] [DEBUG] [boto3.resources.factory] Loading s3:s3 gunicorn-registry stdout | 2025-09-26 08:36:24,226 [258] [DEBUG] [boto3.resources.factory] Loading s3:Bucket gunicorn-registry stdout | 2025-09-26 08:36:24,226 [258] [DEBUG] [boto3.resources.model] Renaming Bucket attribute name gunicorn-registry stdout | 2025-09-26 08:36:24,227 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Bucket: calling handler ._handler at 0x7fe1bb6fae80> gunicorn-registry stdout | 2025-09-26 08:36:24,228 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,228 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,228 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,228 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,228 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,228 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,228 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:24,229 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:24,229 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:24,230 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:24,230 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,230 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,230 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,230 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadBucket) with params: {'url_path': '', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:24,231 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadBucket: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,231 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadBucket: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,231 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,231 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,232 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:24,232 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083624Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:24,232 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083624Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 118e63e1ca6cb9920e8c54b403c80d74be7a7a0b946ed08da12b7d63a245ca0a gunicorn-registry stdout | 2025-09-26 08:36:24,232 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | b171299c277d7c4451393e1ab39bf9092df421bb69eea5ca84f73bf0492cdb84 gunicorn-registry stdout | 2025-09-26 08:36:24,232 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,232 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:24,234 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:24,235 [258] [DEBUG] [urllib3.connectionpool] Starting new HTTPS connection (1): s3.openshift-storage.svc.cluster.local:443 gunicorn-registry stdout | 2025-09-26 08:36:24,270 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:24,271 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l88xy-73l987-doe', 'x-amz-id-2': 'mg0l88xy-73l987-doe', 'Date': 'Fri, 26 Sep 2025 08:36:24 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:24,271 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:24,271 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,271 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:24,271 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadBucket: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,272 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:24,273 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:24,273 [258] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:24,274 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,274 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,274 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,274 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,274 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,274 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,275 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,275 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,275 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:24,275 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:24,275 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:24,275 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:24,276 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,276 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,276 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,276 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:24,277 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,277 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,277 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,277 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,278 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:24,278 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083624Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:24,278 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083624Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 8b389d263b39785ceffef9b7aed207a009d05be0ba545bb7e6adbfc3a143e06d gunicorn-registry stdout | 2025-09-26 08:36:24,278 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 06e4c41975b0d8845ff02d358d42802f04e2d3d41f9ba75558f151c817770324 gunicorn-registry stdout | 2025-09-26 08:36:24,278 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,278 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:24,279 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:24,279 [258] [DEBUG] [urllib3.connectionpool] Starting new HTTPS connection (1): s3.openshift-storage.svc.cluster.local:443 gunicorn-registry stdout | 2025-09-26 08:36:24,309 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:24,309 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l88z4-7snrgd-b2w', 'x-amz-id-2': 'mg0l88z4-7snrgd-b2w', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:24 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:24,310 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b68d65088d73ec60008f9329c' gunicorn-registry stdout | 2025-09-26 08:36:24,310 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,310 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:24,310 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,310 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l88z4-7snrgd-b2w', 'HostId': 'mg0l88z4-7snrgd-b2w', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l88z4-7snrgd-b2w', 'x-amz-id-2': 'mg0l88z4-7snrgd-b2w', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:24 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b', 'UploadId': '68d65088d73ec60008f9329c'} gunicorn-registry stdout | 2025-09-26 08:36:24,311 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:24,353 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:36:24,353 [258] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:36:24,354 [258] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b', 'UploadId': '68d65088d73ec60008f9329c', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b894a840>, 'ContentLength': 1494848} gunicorn-registry stdout | 2025-09-26 08:36:24,354 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,354 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,355 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,355 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,355 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,355 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,355 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,355 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,355 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:24,355 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:24,355 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:24,355 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:24,356 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,359 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,359 [258] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:36:24,359 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,359 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,359 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b', 'query_string': {'uploadId': '68d65088d73ec60008f9329c', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '1494848', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'eZVQi3Afr0nMNJifRJdjNg==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b894a840>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b?uploadId=68d65088d73ec60008f9329c&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b', 'UploadId': '68d65088d73ec60008f9329c', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b894a840>, 'ContentLength': 1494848}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:24,360 [258] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,360 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,360 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,360 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,360 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:24,361 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b gunicorn-registry stdout | partNumber=1&uploadId=68d65088d73ec60008f9329c gunicorn-registry stdout | content-length:1494848 gunicorn-registry stdout | content-md5:eZVQi3Afr0nMNJifRJdjNg== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083624Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:24,361 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083624Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | f47aa0151cc70187499c32256fd9ecc9d91d845dbfff0eb53fff36bdee97fcfd gunicorn-registry stdout | 2025-09-26 08:36:24,361 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | b3113e33df1f1c4159ca08cc2b3271d537d9cfdbfe553d0aa65d36a2189437f3 gunicorn-registry stdout | 2025-09-26 08:36:24,361 [258] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,361 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:24,362 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:24,363 [258] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:24,364 [258] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:36:24,606 [251] [DEBUG] [app] Starting request: urn:request:f6d3a0b6-c3ad-454a-8d43-0d8243851993 (/v2/quayorg/quayrepo/blobs/uploads/876a2cca-e07c-4278-b358-e47364ef6567) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:24,606 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '876a2cca-e07c-4278-b358-e47364ef6567', 'namespace_name': 'quayorg', 'repo_name': 'quayrepo'} gunicorn-registry stdout | 2025-09-26 08:36:24,606 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:24,606 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:24,608 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:24,608 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:24,608 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:24,608 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'quayorg/quayrepo': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:24,608 [251] [DEBUG] [endpoints.v2] Checking permission for repo: quayorg/quayrepo gunicorn-registry stdout | 2025-09-26 08:36:24,609 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['quayorg', 'quayrepo', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:24,610 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:24,611 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:24,614 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:24,615 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['quayorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:24,615 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:24,617 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['quayorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:24,618 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['quayorg']) gunicorn-registry stdout | 2025-09-26 08:36:24,619 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['876a2cca-e07c-4278-b358-e47364ef6567', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:24,620 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:24,620 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:24,620 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:24,621 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:24,622 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/30200f7d-5217-4847-b73a-d45f2358a5af', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:24,622 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,622 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,622 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,622 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,622 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,622 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,622 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,623 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,623 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:24,624 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:24,624 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:24,624 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:24,624 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,624 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,624 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,624 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/30200f7d-5217-4847-b73a-d45f2358a5af?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/30200f7d-5217-4847-b73a-d45f2358a5af', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/30200f7d-5217-4847-b73a-d45f2358a5af?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/30200f7d-5217-4847-b73a-d45f2358a5af', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:24,624 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,625 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,625 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,625 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,625 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:24,625 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/30200f7d-5217-4847-b73a-d45f2358a5af gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083624Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:24,625 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083624Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 1800b8e1d6a9292ca6a71a4a22ca36bbf1e9a12e06e5d0e28e1ddcbfcd4f7c41 gunicorn-registry stdout | 2025-09-26 08:36:24,625 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 1faeb8f809e45054cd0f6a73b2a35c1e6854c52c6ffe4808aacfe5ea22850292 gunicorn-registry stdout | 2025-09-26 08:36:24,625 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,625 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:24,626 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:24,626 [251] [DEBUG] [urllib3.connectionpool] Starting new HTTPS connection (1): s3.openshift-storage.svc.cluster.local:443 gunicorn-registry stdout | 2025-09-26 08:36:24,660 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/30200f7d-5217-4847-b73a-d45f2358a5af?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:24,661 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l898t-dkkzds-kiv', 'x-amz-id-2': 'mg0l898t-dkkzds-kiv', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:24 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:24,661 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/30200f7d-5217-4847-b73a-d45f2358a5af68d65088d73ec60008f932a8' gunicorn-registry stdout | 2025-09-26 08:36:24,661 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,661 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:24,661 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,661 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l898t-dkkzds-kiv', 'HostId': 'mg0l898t-dkkzds-kiv', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l898t-dkkzds-kiv', 'x-amz-id-2': 'mg0l898t-dkkzds-kiv', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:24 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/30200f7d-5217-4847-b73a-d45f2358a5af', 'UploadId': '68d65088d73ec60008f932a8'} gunicorn-registry stdout | 2025-09-26 08:36:24,661 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:24,662 [251] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/30200f7d-5217-4847-b73a-d45f2358a5af', 'UploadId': '68d65088d73ec60008f932a8'} gunicorn-registry stdout | 2025-09-26 08:36:24,662 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,662 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,663 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,663 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,663 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,663 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,663 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:24,663 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:24,663 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:24,663 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:24,663 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,663 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,663 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,663 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/30200f7d-5217-4847-b73a-d45f2358a5af', 'query_string': {'uploadId': '68d65088d73ec60008f932a8'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/30200f7d-5217-4847-b73a-d45f2358a5af', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/30200f7d-5217-4847-b73a-d45f2358a5af?uploadId=68d65088d73ec60008f932a8', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/30200f7d-5217-4847-b73a-d45f2358a5af', 'UploadId': '68d65088d73ec60008f932a8'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:24,664 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,664 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,664 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,664 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,664 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:24,664 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/30200f7d-5217-4847-b73a-d45f2358a5af gunicorn-registry stdout | uploadId=68d65088d73ec60008f932a8 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083624Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:24,664 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083624Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 059fe407c7210f5baf36ea73d9c4f4d4ead91b2cde265b64460db7372338d9a7 gunicorn-registry stdout | 2025-09-26 08:36:24,664 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | bc0fb31920b6b0f68ab2a5c32996bc48b8857e4b9bd21e28879d62ca37146a5e gunicorn-registry stdout | 2025-09-26 08:36:24,664 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,665 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:24,665 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:24,675 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/30200f7d-5217-4847-b73a-d45f2358a5af?uploadId=68d65088d73ec60008f932a8 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:36:24,676 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8996-dsh3ex-8im', 'x-amz-id-2': 'mg0l8996-dsh3ex-8im', 'Date': 'Fri, 26 Sep 2025 08:36:24 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:24,676 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:24,676 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,676 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:24,676 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,676 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8996-dsh3ex-8im', 'HostId': 'mg0l8996-dsh3ex-8im', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8996-dsh3ex-8im', 'x-amz-id-2': 'mg0l8996-dsh3ex-8im', 'date': 'Fri, 26 Sep 2025 08:36:24 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:36:24,676 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 876a2cca-e07c-4278-b358-e47364ef6567 took 0.05607461929321289 seconds gunicorn-registry stdout | 2025-09-26 08:36:24,677 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['876a2cca-e07c-4278-b358-e47364ef6567', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:24,678 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [1, '876a2cca-e07c-4278-b358-e47364ef6567', 147, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwDwAAAP//AQAA//9cMGVfAAgAAPz2r35In4Ok+V/vh7W94+kc0Lvy+OT/ha0GFBVLWH4C8c/9B+ieKyeBSWAQAhMAAAAAAAAAAAQAAAAAAAB2eBlgg33jJiYzgpj1lnRB6bLdGhN+OidPuVqFAudJ8JRiLg==', 9, '{"chunks": [["uploads/290f5d76-2e8e-4946-ac56-6800177cc9e5", 0, 147]]}', 2, 2048, datetime.datetime(2025, 9, 26, 8, 36, 24, 63790), None, None, 5]) gunicorn-registry stdout | 2025-09-26 08:36:24,680 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:24,680 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:24,681 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:24,681 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:24,681 [251] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9'} gunicorn-registry stdout | 2025-09-26 08:36:24,682 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,682 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,682 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,682 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,682 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,682 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,682 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,682 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:24,682 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:24,682 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:24,682 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:24,683 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,683 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,683 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,683 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:24,683 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,683 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,683 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,684 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,684 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:24,684 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083624Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:24,684 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083624Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 00a169ecc3e134daa598b1df6af311265ea2421adfd272e8671d212a66ac5b45 gunicorn-registry stdout | 2025-09-26 08:36:24,684 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 3f2d129cec7c2b443cdc3ff299412dfda1693ae59748c58bdd4a4a16507c8a0e gunicorn-registry stdout | 2025-09-26 08:36:24,684 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,684 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:24,684 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:24,855 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:36:24,856 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l89b3-exej8e-3oc', 'x-amz-id-2': 'mg0l89b3-exej8e-3oc', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:24 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:24,856 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:24,859 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,859 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:24,859 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,859 [251] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:36:24,860 [251] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:36:24,860 [251] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9 gunicorn-registry stdout | 2025-09-26 08:36:24,860 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:24,861 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:24,861 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:24,861 [251] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:36:24,861 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,861 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,862 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,862 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,862 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,862 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,862 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,862 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:24,862 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:24,862 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:24,862 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:24,863 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,863 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,863 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,863 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/290f5d76-2e8e-4946-ac56-6800177cc9e5', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/290f5d76-2e8e-4946-ac56-6800177cc9e5', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/290f5d76-2e8e-4946-ac56-6800177cc9e5', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/290f5d76-2e8e-4946-ac56-6800177cc9e5'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:24,863 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,863 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,864 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,864 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,864 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,864 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:24,864 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/290f5d76-2e8e-4946-ac56-6800177cc9e5 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083624Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:24,864 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083624Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | d2a580835ddf19dd50a90981caa7072241fa3daf717a430bf0aa6dfa50dcb6f1 gunicorn-registry stdout | 2025-09-26 08:36:24,864 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | cbd0ff51378d5afabcaffa551da4cc51af3d094b8ddd26cbb8c6c22a7f74d787 gunicorn-registry stdout | 2025-09-26 08:36:24,864 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,864 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,864 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:24,865 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:24,945 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/290f5d76-2e8e-4946-ac56-6800177cc9e5 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:24,946 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l89gm-1or6a9-wm7', 'x-amz-id-2': 'mg0l89gm-1or6a9-wm7', 'ETag': '"018251fc92574b91bd5da175134e46e8-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:24 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '147', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:24 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:24,946 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:24,947 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,947 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:24,947 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,947 [251] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:36:24,947 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:24,947 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:24,947 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:24,948 [251] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/290f5d76-2e8e-4946-ac56-6800177cc9e5'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 'extra_args': {}, 'callbacks': [], 'size': 147} gunicorn-registry stdout | 2025-09-26 08:36:24,948 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,948 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,948 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,948 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,948 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,948 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,948 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,948 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,949 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,949 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,949 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:24,949 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:24,949 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:24,949 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:24,949 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,949 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,949 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,949 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/290f5d76-2e8e-4946-ac56-6800177cc9e5', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/290f5d76-2e8e-4946-ac56-6800177cc9e5', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:24,950 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,950 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,950 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,950 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,950 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,950 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:24,950 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/290f5d76-2e8e-4946-ac56-6800177cc9e5 gunicorn-registry stdout | x-amz-date:20250926T083624Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:24,950 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083624Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 9637f052dd21158a2a545961fa8da51d3d04afb615b0de9995699e611bd6d1d5 gunicorn-registry stdout | 2025-09-26 08:36:24,951 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | a980a71723b22214e2438f1d7ff6480c86d4d645c4a92007da166e25c53f5d88 gunicorn-registry stdout | 2025-09-26 08:36:24,951 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,951 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,951 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:24,951 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:24,952 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:24,970 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b?uploadId=68d65088d73ec60008f9329c&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:24,970 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l890r-8s7d6c-k06', 'x-amz-id-2': 'mg0l890r-8s7d6c-k06', 'ETag': '"7995508b701faf49cc34989f44976336"', 'Date': 'Fri, 26 Sep 2025 08:36:24 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:36:24,970 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:24,970 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,971 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:24,971 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,971 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l890r-8s7d6c-k06', 'HostId': 'mg0l890r-8s7d6c-k06', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l890r-8s7d6c-k06', 'x-amz-id-2': 'mg0l890r-8s7d6c-k06', 'etag': '"7995508b701faf49cc34989f44976336"', 'date': 'Fri, 26 Sep 2025 08:36:24 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"7995508b701faf49cc34989f44976336"'} gunicorn-registry stdout | 2025-09-26 08:36:24,971 [258] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b', 'UploadId': '68d65088d73ec60008f9329c', 'MultipartUpload': {'Parts': [{'ETag': '"7995508b701faf49cc34989f44976336"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:36:24,971 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,971 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,971 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,971 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,971 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,972 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,972 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,972 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:24,972 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:24,972 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:24,972 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:24,973 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,973 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,973 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,973 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b', 'query_string': {'uploadId': '68d65088d73ec60008f9329c'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"7995508b701faf49cc34989f44976336"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b?uploadId=68d65088d73ec60008f9329c', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b', 'UploadId': '68d65088d73ec60008f9329c', 'MultipartUpload': {'Parts': [{'ETag': '"7995508b701faf49cc34989f44976336"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:24,973 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,973 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,973 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,973 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,974 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:24,974 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b gunicorn-registry stdout | uploadId=68d65088d73ec60008f9329c gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:eed40a2d5ecda77c31d99018920cd3cacc5a093305189a615caeda2a98570d63 gunicorn-registry stdout | x-amz-date:20250926T083624Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | eed40a2d5ecda77c31d99018920cd3cacc5a093305189a615caeda2a98570d63 gunicorn-registry stdout | 2025-09-26 08:36:24,974 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083624Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 68e0bb49560733ef7e43748d8d9214f79810656b281f8039eb3ac6f15fb2611b gunicorn-registry stdout | 2025-09-26 08:36:24,974 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | d58449cd32edde6c4a1a722f241699c6fce76a7fbc175ef700ad044353ab1962 gunicorn-registry stdout | 2025-09-26 08:36:24,974 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,974 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:24,974 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:24,998 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b?uploadId=68d65088d73ec60008f9329c HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:36:24,999 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l89ht-2e3njy-13jd', 'x-amz-id-2': 'mg0l89ht-2e3njy-13jd', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:36:24 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:24,999 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b"9a6014d504d1722e1fee513143598eec-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b?uploadId=68d65088d73ec60008f9329c' gunicorn-registry stdout | 2025-09-26 08:36:24,999 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,999 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:24,999 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:24,999 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:24,999 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l89ht-2e3njy-13jd', 'HostId': 'mg0l89ht-2e3njy-13jd', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l89ht-2e3njy-13jd', 'x-amz-id-2': 'mg0l89ht-2e3njy-13jd', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:36:24 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b?uploadId=68d65088d73ec60008f9329c', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b', 'ETag': '"9a6014d504d1722e1fee513143598eec-1"'} gunicorn-registry stdout | 2025-09-26 08:36:24,999 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:25,000 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:25,001 [258] [DEBUG] [data.registry_model.blobuploader] Uploaded 1494848 bytes to blob cdb8b9b4-365a-4b8d-bb06-b1f544fc0fc5 took 0.9020407199859619 seconds gunicorn-registry stdout | 2025-09-26 08:36:25,002 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['cdb8b9b4-365a-4b8d-bb06-b1f544fc0fc5', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:25,002 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:36:25,003 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l89h6-205abm-y63', 'x-amz-id-2': 'mg0l89h6-205abm-y63', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:36:25 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:25,003 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:36:25.000Z"018251fc92574b91bd5da175134e46e8-1"' gunicorn-registry stdout | 2025-09-26 08:36:25,003 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:25,003 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:25,003 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:25,003 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:25,004 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:25,004 [258] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [1, 'cdb8b9b4-365a-4b8d-bb06-b1f544fc0fc5', 1494848, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwEVVmZPztYfPdEQGFQV2CoNzF4UCoEBBSZR3Q32E67z/56AkHnnDgCQf+Zznw/wEAAP//AQAA///eT2tgAH4/AAAAAAAAAAAAAHq2AAAAAADZRtT7WgyGiOCw6UBdxE5z5QO8XM3oWSQ4YslybPI3WpRiLg==', 9, '{"chunks": [["uploads/d090bbf4-411f-4f9a-a298-f6878d9d2b3b", 0, 1494848]]}', 1, 4161024, datetime.datetime(2025, 9, 26, 8, 36, 23, 974246), None, None, 4]) gunicorn-registry stdout | 2025-09-26 08:36:25,004 [251] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 876a2cca-e07c-4278-b358-e47364ef6567 with digest sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9 took 0.14464831352233887 seconds gunicorn-registry stdout | 2025-09-26 08:36:25,005 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['876a2cca-e07c-4278-b358-e47364ef6567', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:25,006 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:25,006 [258] [DEBUG] [app] Ending request: urn:request:41168496-942d-4d00-a95b-18518433cea7 (/v2/quayorg/quayrepo/blobs/uploads/cdb8b9b4-365a-4b8d-bb06-b1f544fc0fc5) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:41168496-942d-4d00-a95b-18518433cea7', 'remote_addr': '10.129.4.11', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/quayorg/quayrepo/blobs/uploads/cdb8b9b4-365a-4b8d-bb06-b1f544fc0fc5', 'path': '/v2/quayorg/quayrepo/blobs/uploads/cdb8b9b4-365a-4b8d-bb06-b1f544fc0fc5', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:25,006 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:25,006 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:25,007 [258] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:25 +0000] "PATCH /v2/quayorg/quayrepo/blobs/uploads/cdb8b9b4-365a-4b8d-bb06-b1f544fc0fc5 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" gunicorn-registry stdout | 2025-09-26 08:36:25,007 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['42b92989-996c-4697-bd9f-edbb4e9f8130', 147, 2048, True, True, 'sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9']) nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:25 +0000] "PATCH /v2/quayorg/quayrepo/blobs/uploads/cdb8b9b4-365a-4b8d-bb06-b1f544fc0fc5 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.927 1496632 0.927) gunicorn-registry stdout | 2025-09-26 08:36:25,008 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [2, 9]) gunicorn-registry stdout | 2025-09-26 08:36:25,009 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:25,010 [251] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [1, 2, datetime.datetime(2025, 9, 26, 8, 36, 25, 10394), datetime.datetime(2025, 9, 26, 9, 36, 25, 10379)]) gunicorn-registry stdout | 2025-09-26 08:36:25,011 [251] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [5]) gunicorn-registry stdout | 2025-09-26 08:36:25,015 [251] [DEBUG] [app] Ending request: urn:request:f6d3a0b6-c3ad-454a-8d43-0d8243851993 (/v2/quayorg/quayrepo/blobs/uploads/876a2cca-e07c-4278-b358-e47364ef6567) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:f6d3a0b6-c3ad-454a-8d43-0d8243851993', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/quayorg/quayrepo/blobs/uploads/876a2cca-e07c-4278-b358-e47364ef6567?digest=sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 'path': '/v2/quayorg/quayrepo/blobs/uploads/876a2cca-e07c-4278-b358-e47364ef6567', 'parameters': {'digest': 'sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:25,015 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:25,015 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:25,015 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:25 +0000] "PUT /v2/quayorg/quayrepo/blobs/uploads/876a2cca-e07c-4278-b358-e47364ef6567?digest=sha256%3A35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:25 +0000] "PUT /v2/quayorg/quayrepo/blobs/uploads/876a2cca-e07c-4278-b358-e47364ef6567?digest=sha256%3A35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.410 1857 0.410) globalpromstats stdout | 2025-09-26 08:36:25,097 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} proxycacheblobworker stdout | 2025-09-26 08:36:25,825 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} proxycacheblobworker stdout | 2025-09-26 08:36:26,483 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:36:26,484 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:32.477454+00:00 (in 5.993204 seconds) proxycacheblobworker stdout | 2025-09-26 08:36:26,484 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:26 GMT)" (scheduled at 2025-09-26 08:36:26.483749+00:00) proxycacheblobworker stdout | 2025-09-26 08:36:26,484 [69] [DEBUG] [workers.queueworker] Running watchdog. proxycacheblobworker stdout | 2025-09-26 08:36:26,484 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:26 GMT)" executed successfully namespacegcworker stdout | 2025-09-26 08:36:26,793 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:36:26,793 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:59.791127+00:00 (in 32.997264 seconds) namespacegcworker stdout | 2025-09-26 08:36:26,794 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:41:26 GMT)" (scheduled at 2025-09-26 08:36:26.793442+00:00) namespacegcworker stdout | 2025-09-26 08:36:26,799 [66] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [False, datetime.datetime(2025, 9, 26, 8, 36, 26, 794224), 'namespacegc/%']) namespacegcworker stdout | 2025-09-26 08:36:26,806 [66] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 36, 26, 794224), True, datetime.datetime(2025, 9, 26, 8, 36, 26, 794224), 0, 'namespacegc/%']) namespacegcworker stdout | 2025-09-26 08:36:26,811 [66] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) AND NOT ("t1"."queue_name" IN (SELECT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s)))))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 36, 26, 794224), True, datetime.datetime(2025, 9, 26, 8, 36, 26, 794224), 0, 'namespacegc/%', False, datetime.datetime(2025, 9, 26, 8, 36, 26, 794224), 'namespacegc/%']) namespacegcworker stdout | 2025-09-26 08:36:26,812 [66] [DEBUG] [data.database] Disconnecting from database. namespacegcworker stdout | 2025-09-26 08:36:26,812 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:41:26 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:36:26,915 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} repositoryactioncounter stdout | 2025-09-26 08:36:27,007 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} gcworker stdout | 2025-09-26 08:36:27,083 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:36:27,083 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:37.085344+00:00 (in 10.001534 seconds) gcworker stdout | 2025-09-26 08:36:27,084 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:57 GMT)" (scheduled at 2025-09-26 08:36:27.083344+00:00) gcworker stdout | 2025-09-26 08:36:27,084 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:36:27,084 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:57 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:36:27,197 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} manifestsubjectbackfillworker stdout | 2025-09-26 08:36:27,720 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} repositorygcworker stdout | 2025-09-26 08:36:28,077 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:36:28,077 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:19.075668+00:00 (in 50.997970 seconds) repositorygcworker stdout | 2025-09-26 08:36:28,077 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:28 GMT)" (scheduled at 2025-09-26 08:36:28.077240+00:00) repositorygcworker stdout | 2025-09-26 08:36:28,077 [81] [DEBUG] [workers.queueworker] Running watchdog. repositorygcworker stdout | 2025-09-26 08:36:28,077 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:28 GMT)" executed successfully securityscanningnotificationworker stdout | 2025-09-26 08:36:28,587 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:36:28,587 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:39.586780+00:00 (in 10.999181 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:36:28,587 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:28 GMT)" (scheduled at 2025-09-26 08:36:28.587130+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:36:28,587 [82] [DEBUG] [workers.queueworker] Running watchdog. securityscanningnotificationworker stdout | 2025-09-26 08:36:28,587 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:28 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:36:30,007 [255] [DEBUG] [app] Starting request: urn:request:95ff952d-c1fb-444e-b451-096f7cca5005 (/v2/quayorg/quayrepo/blobs/sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:30,007 [255] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'namespace_name': 'quayorg', 'repo_name': 'quayrepo'} gunicorn-registry stdout | 2025-09-26 08:36:30,007 [255] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:30,007 [255] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:30,008 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."kid", "t1"."service", "t1"."jwk", "t1"."metadata", "t1"."created_date", "t1"."expiration_date", "t1"."rotation_duration", "t1"."approval_id" FROM "servicekey" AS "t1" LEFT OUTER JOIN "servicekeyapproval" AS "t2" ON ("t1"."approval_id" = "t2"."id") WHERE ((((NOT ("t1"."approval_id" IS %s) AND (("t1"."expiration_date" > %s) OR ("t1"."expiration_date" IS %s))) AND ("t1"."service" = %s)) AND (NOT (("t1"."service" = %s) AND ("t1"."expiration_date" <= %s)) OR NOT ((("t1"."service" = %s) AND ("t1"."approval_id" IS %s)) AND ("t1"."created_date" <= %s)))) AND (NOT ("t1"."expiration_date" <= %s) OR ("t1"."expiration_date" IS %s)))', [None, datetime.datetime(2025, 9, 26, 8, 36, 30, 7801), None, 'quay', 'quay', datetime.datetime(2025, 9, 26, 8, 36, 30, 7827), 'quay', None, datetime.datetime(2025, 9, 25, 8, 36, 30, 7851), datetime.datetime(2025, 9, 19, 8, 36, 30, 7867), None]) gunicorn-registry stdout | 2025-09-26 08:36:30,012 [255] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:30,012 [255] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:30,012 [255] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:30,012 [255] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'quayorg/quayrepo': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:30,012 [255] [DEBUG] [endpoints.v2] Checking permission for repo: quayorg/quayrepo gunicorn-registry stdout | 2025-09-26 08:36:30,013 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,015 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['quayorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,016 [255] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['quayorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:30,016 [255] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__quayorg_quayrepo_sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc_2 gunicorn-registry stdout | 2025-09-26 08:36:30,016 [255] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__quayorg_quayrepo_sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:30,017 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['quayorg', 'quayrepo', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,019 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,019 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,021 [255] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,022 [255] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,023 [255] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__quayorg_quayrepo_sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc_2: None gunicorn-registry stdout | 2025-09-26 08:36:30,023 [255] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__quayorg_quayrepo_sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc_2: None gunicorn-registry stdout | 2025-09-26 08:36:30,023 [255] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:30,024 [255] [DEBUG] [app] Ending request: urn:request:95ff952d-c1fb-444e-b451-096f7cca5005 (/v2/quayorg/quayrepo/blobs/sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:95ff952d-c1fb-444e-b451-096f7cca5005', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/quayorg/quayrepo/blobs/sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'path': '/v2/quayorg/quayrepo/blobs/sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:30,024 [255] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:30,024 [255] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:30,025 [255] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:30 +0000] "HEAD /v2/quayorg/quayrepo/blobs/sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:30 +0000] "HEAD /v2/quayorg/quayrepo/blobs/sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.020 1722 0.020) gunicorn-registry stdout | 2025-09-26 08:36:30,349 [258] [DEBUG] [app] Starting request: urn:request:44df774a-b236-427b-b36b-d2782c17854f (/v2/quayorg/quayrepo/blobs/uploads/c2d396f9-8943-44c2-a9d7-4517310cb072) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:30,349 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'c2d396f9-8943-44c2-a9d7-4517310cb072', 'namespace_name': 'quayorg', 'repo_name': 'quayrepo'} gunicorn-registry stdout | 2025-09-26 08:36:30,349 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:30,349 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:30,350 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:30,350 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:30,350 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:30,350 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'quayorg/quayrepo': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:30,350 [258] [DEBUG] [endpoints.v2] Checking permission for repo: quayorg/quayrepo gunicorn-registry stdout | 2025-09-26 08:36:30,352 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['quayorg', 'quayrepo', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,355 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,355 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,356 [258] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,357 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['quayorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,358 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,359 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['quayorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,361 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['quayorg']) gunicorn-registry stdout | 2025-09-26 08:36:30,361 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['c2d396f9-8943-44c2-a9d7-4517310cb072', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,363 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:30,363 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:30,363 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:30,364 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:30,364 [258] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/910f2b61-bea0-479a-be82-782659caeaec', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:30,364 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,364 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,364 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,364 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,364 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,364 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,364 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,364 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,364 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:30,364 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:30,364 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:30,364 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:30,365 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,365 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,365 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,365 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/910f2b61-bea0-479a-be82-782659caeaec?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/910f2b61-bea0-479a-be82-782659caeaec', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/910f2b61-bea0-479a-be82-782659caeaec?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/910f2b61-bea0-479a-be82-782659caeaec', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:30,365 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,365 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,365 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,365 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,365 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:30,365 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/910f2b61-bea0-479a-be82-782659caeaec gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083630Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:30,365 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083630Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 30167d18ae419068ce906a85aa027a1c3ac18bec08302b64f6badc93b8aed2e0 gunicorn-registry stdout | 2025-09-26 08:36:30,365 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 03b8274516420c83eade67a4c110793346f9ccc5fec3d6338c3828663de9eb7f gunicorn-registry stdout | 2025-09-26 08:36:30,365 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,365 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:30,366 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:30,373 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/910f2b61-bea0-479a-be82-782659caeaec?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:30,373 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8dnj-8uhcdd-vkt', 'x-amz-id-2': 'mg0l8dnj-8uhcdd-vkt', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:30 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:30,373 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/910f2b61-bea0-479a-be82-782659caeaec68d6508ed73ec60008f9333d' gunicorn-registry stdout | 2025-09-26 08:36:30,373 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,373 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:30,373 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,373 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8dnj-8uhcdd-vkt', 'HostId': 'mg0l8dnj-8uhcdd-vkt', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8dnj-8uhcdd-vkt', 'x-amz-id-2': 'mg0l8dnj-8uhcdd-vkt', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:30 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/910f2b61-bea0-479a-be82-782659caeaec', 'UploadId': '68d6508ed73ec60008f9333d'} gunicorn-registry stdout | 2025-09-26 08:36:30,374 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:30,374 [258] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/910f2b61-bea0-479a-be82-782659caeaec', 'UploadId': '68d6508ed73ec60008f9333d'} gunicorn-registry stdout | 2025-09-26 08:36:30,374 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,374 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,374 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,374 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,374 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,375 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,375 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:30,375 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:30,375 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:30,375 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:30,375 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,375 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,376 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,376 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/910f2b61-bea0-479a-be82-782659caeaec', 'query_string': {'uploadId': '68d6508ed73ec60008f9333d'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/910f2b61-bea0-479a-be82-782659caeaec', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/910f2b61-bea0-479a-be82-782659caeaec?uploadId=68d6508ed73ec60008f9333d', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/910f2b61-bea0-479a-be82-782659caeaec', 'UploadId': '68d6508ed73ec60008f9333d'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:30,376 [258] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,376 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,376 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,376 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,376 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:30,376 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/910f2b61-bea0-479a-be82-782659caeaec gunicorn-registry stdout | uploadId=68d6508ed73ec60008f9333d gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083630Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:30,376 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083630Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | c8af7c4e1494c4d12a67935a80e9bdbe7b146e0d4a95a3fa4484e08e174d7667 gunicorn-registry stdout | 2025-09-26 08:36:30,376 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | e1fe19df1e4517826d4cf4c94fa1568690000890d9b178376f636e7c931841ba gunicorn-registry stdout | 2025-09-26 08:36:30,376 [258] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,377 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:30,377 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:30,384 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/910f2b61-bea0-479a-be82-782659caeaec?uploadId=68d6508ed73ec60008f9333d HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:36:30,384 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8dnu-90rg0b-mf6', 'x-amz-id-2': 'mg0l8dnu-90rg0b-mf6', 'Date': 'Fri, 26 Sep 2025 08:36:30 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:30,384 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:30,384 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,384 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:30,384 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,384 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8dnu-90rg0b-mf6', 'HostId': 'mg0l8dnu-90rg0b-mf6', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8dnu-90rg0b-mf6', 'x-amz-id-2': 'mg0l8dnu-90rg0b-mf6', 'date': 'Fri, 26 Sep 2025 08:36:30 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:36:30,384 [258] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob c2d396f9-8943-44c2-a9d7-4517310cb072 took 0.021690845489501953 seconds gunicorn-registry stdout | 2025-09-26 08:36:30,385 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['c2d396f9-8943-44c2-a9d7-4517310cb072', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,386 [258] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [1, 'c2d396f9-8943-44c2-a9d7-4517310cb072', 7698, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwY2Y0ZWRhMWE2MjY0ZmMiXX19MGFkNmVmODkzZTk5OGY4OGEzNWRjOWNjMjJmOTUyYzYyYjg4ZDU4Zjk0ODM0NBIAAAAAAAAAAPAAAAAAAAAugfcCFXEGHDAKmNf90iCvhMGlCD+up76pGstGS/xLh5RiLg==', 9, '{"chunks": [["uploads/0cf525b7-9c49-4bcc-bb24-f49af9d04cff", 0, 7698]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 36, 30, 98203), None, None, 7]) gunicorn-registry stdout | 2025-09-26 08:36:30,388 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:30,388 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:30,388 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:30,389 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:30,389 [258] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc'} gunicorn-registry stdout | 2025-09-26 08:36:30,389 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,389 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,389 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,389 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,389 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,390 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,390 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,390 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:30,390 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:30,390 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:30,390 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:30,390 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,390 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,390 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,390 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:30,391 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,391 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,391 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,391 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,391 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:30,391 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083630Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:30,391 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083630Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 8f7cbe3f1fbc242510f4d4b08ff84e0f55661d78fba2e819f4d616606a5c7727 gunicorn-registry stdout | 2025-09-26 08:36:30,391 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | ad1bdd44f20eab4b61c34cc1ea843c2e519f19dd3dc857207eb4a0e26e89cf6b gunicorn-registry stdout | 2025-09-26 08:36:30,391 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,391 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:30,392 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:30,397 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:36:30,398 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8do9-99osvl-nod', 'x-amz-id-2': 'mg0l8do9-99osvl-nod', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:30 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:30,398 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:30,399 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,399 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:30,399 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,400 [258] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:36:30,400 [258] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:36:30,400 [258] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc gunicorn-registry stdout | 2025-09-26 08:36:30,401 [258] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:30,401 [258] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:30,401 [258] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:30,401 [258] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:36:30,402 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,402 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,402 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,402 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,402 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,402 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,402 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,402 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:30,402 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:30,402 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:30,403 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:30,403 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,403 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,403 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,403 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/0cf525b7-9c49-4bcc-bb24-f49af9d04cff', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/0cf525b7-9c49-4bcc-bb24-f49af9d04cff', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/0cf525b7-9c49-4bcc-bb24-f49af9d04cff', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/0cf525b7-9c49-4bcc-bb24-f49af9d04cff'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:30,404 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,404 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,404 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,405 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,405 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,405 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:30,405 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/0cf525b7-9c49-4bcc-bb24-f49af9d04cff gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083630Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:30,405 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083630Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 41b887108cf9b44effde8aec8dc5a4bde679be17051c818328192c29eec21a23 gunicorn-registry stdout | 2025-09-26 08:36:30,405 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 2058a16d15cfed5054240900d6e654ab4607173ab36dab9b1e989f93588a7451 gunicorn-registry stdout | 2025-09-26 08:36:30,405 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,405 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,405 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:30,406 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:30,406 [258] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | 2025-09-26 08:36:30,434 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/0cf525b7-9c49-4bcc-bb24-f49af9d04cff HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:30,435 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8dpa-9w13lz-1f2', 'x-amz-id-2': 'mg0l8dpa-9w13lz-1f2', 'ETag': '"7d1bc3fb37637dd0a81dabcf72e9bbfc-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:30 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '7698', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:30 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:30,435 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:30,436 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,436 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:30,436 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,436 [258] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:36:30,437 [258] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:30,437 [258] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:30,437 [258] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:30,437 [258] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/0cf525b7-9c49-4bcc-bb24-f49af9d04cff'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'extra_args': {}, 'callbacks': [], 'size': 7698} gunicorn-registry stdout | 2025-09-26 08:36:30,437 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,438 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,438 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,438 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,438 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,438 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,438 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,438 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,438 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,438 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,438 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:30,438 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:30,438 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:30,438 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:30,439 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,439 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,439 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,439 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/0cf525b7-9c49-4bcc-bb24-f49af9d04cff', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/0cf525b7-9c49-4bcc-bb24-f49af9d04cff', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:30,439 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,439 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,440 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,440 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,440 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,440 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:30,440 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/0cf525b7-9c49-4bcc-bb24-f49af9d04cff gunicorn-registry stdout | x-amz-date:20250926T083630Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:30,440 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083630Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | cc6f606440ac0b1c3e2c56153716faa43d11632b7f86c08fdb35d48ad83029b3 gunicorn-registry stdout | 2025-09-26 08:36:30,440 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 27fd1aa850335de091ddf5450cb240b57a69a5894653cb65cacc9dbc7b1ab9e7 gunicorn-registry stdout | 2025-09-26 08:36:30,440 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,440 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,440 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:30,441 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:30,441 [258] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:30,468 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:36:30,468 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8dpm-a2siqi-1a1i', 'x-amz-id-2': 'mg0l8dpm-a2siqi-1a1i', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:36:30 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:30,468 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:36:30.000Z"7d1bc3fb37637dd0a81dabcf72e9bbfc-1"' gunicorn-registry stdout | 2025-09-26 08:36:30,469 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,469 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,469 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:30,469 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,469 [258] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:30,470 [258] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob c2d396f9-8943-44c2-a9d7-4517310cb072 with digest sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc took 0.06958913803100586 seconds gunicorn-registry stdout | 2025-09-26 08:36:30,470 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['c2d396f9-8943-44c2-a9d7-4517310cb072', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,471 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "imagestoragelocation" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:30,472 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,473 [258] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['86c9f0ff-30c6-4d94-bde8-375b2a721ed8', 7698, None, True, True, 'sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc']) gunicorn-registry stdout | 2025-09-26 08:36:30,474 [258] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [7, 9]) gunicorn-registry stdout | 2025-09-26 08:36:30,475 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,476 [258] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [1, 7, datetime.datetime(2025, 9, 26, 8, 36, 30, 475897), datetime.datetime(2025, 9, 26, 9, 36, 30, 475881)]) gunicorn-registry stdout | 2025-09-26 08:36:30,476 [258] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [7]) gunicorn-registry stdout | 2025-09-26 08:36:30,479 [258] [DEBUG] [app] Ending request: urn:request:44df774a-b236-427b-b36b-d2782c17854f (/v2/quayorg/quayrepo/blobs/uploads/c2d396f9-8943-44c2-a9d7-4517310cb072) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:44df774a-b236-427b-b36b-d2782c17854f', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/quayorg/quayrepo/blobs/uploads/c2d396f9-8943-44c2-a9d7-4517310cb072?digest=sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'path': '/v2/quayorg/quayrepo/blobs/uploads/c2d396f9-8943-44c2-a9d7-4517310cb072', 'parameters': {'digest': 'sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:30,479 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:30,479 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:30,479 [258] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:30 +0000] "PUT /v2/quayorg/quayrepo/blobs/uploads/c2d396f9-8943-44c2-a9d7-4517310cb072?digest=sha256%3A53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:30 +0000] "PUT /v2/quayorg/quayrepo/blobs/uploads/c2d396f9-8943-44c2-a9d7-4517310cb072?digest=sha256%3A53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.131 1857 0.131) gunicorn-registry stdout | 2025-09-26 08:36:30,536 [258] [DEBUG] [app] Starting request: urn:request:2bb62929-0aa4-4865-9fcc-4f1fb0ac3a43 (/v2/quayorg/quayrepo/manifests/redis) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:30,536 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'manifest_ref': 'redis', 'namespace_name': 'quayorg', 'repo_name': 'quayrepo'} gunicorn-registry stdout | 2025-09-26 08:36:30,536 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:30,537 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzgyLCJpYXQiOjE3NTg4NzU3ODIsImV4cCI6MTc1ODg3OTM4Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoicXVheW9yZy9xdWF5cmVwbyIsImFjdGlvbnMiOlsicHVzaCIsInB1bGwiXX1dLCJjb250ZXh0Ijp7InZlcnNpb24iOjIsImVudGl0eV9raW5kIjoidXNlciIsImVudGl0eV9yZWZlcmVuY2UiOiI5Zjc3NmRjZS03MzQ3LTRiNjktOGJkNS0zNjIxMDM0ZGIyM2MiLCJraW5kIjoidXNlciIsInVzZXIiOiJxdWF5IiwiY29tLmFwb3N0aWxsZS5yb290cyI6eyJxdWF5b3JnL3F1YXlyZXBvIjoiJGRpc2FibGVkIn0sImNvbS5hcG9zdGlsbGUucm9vdCI6IiRkaXNhYmxlZCJ9fQ.c0KT_SR1-mRUqc0knZI0GcTEGbuC_IKQwqWylpxvy9wrNfhBDhbgdwuIGNepjcwZTfI13zAKiDiMjJjE41M4YaNfIl1C9g9a7aUBRPudWaoSww8d-xqFYQpLltj-Ip5eG5U-Fqde10W2LmZ2h71iIZsBcg6r_9PaBQIAWx8r4Kq3pKMLEOoy83IkqBej46sSZeJJPI2sJ0M1TSiQuaMsJKv1-LAkchTB6JBIUss1Bpr-_EYbbv4GRbKJ3g8eKkdlNvAd5Q73X5a8pUWpDfMCmP0TJ5eSEB82tkwLObZmDNb0SnKTv00JiJnO31WIPczDJt2lcP_VoQzdytYA9zjWnw gunicorn-registry stdout | 2025-09-26 08:36:30,538 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:30,538 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:30,538 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:30,538 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'quayorg/quayrepo': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:30,538 [258] [DEBUG] [endpoints.v2] Checking permission for repo: quayorg/quayrepo gunicorn-registry stdout | 2025-09-26 08:36:30,539 [258] [DEBUG] [data.cache.cache_key] Loading repository lookup from cache_key: repository_lookup_quayorg_quayrepo gunicorn-registry stdout | 2025-09-26 08:36:30,539 [258] [DEBUG] [data.cache.impl] Checking cache for key repository_lookup_quayorg_quayrepo gunicorn-registry stdout | 2025-09-26 08:36:30,539 [258] [DEBUG] [data.cache.impl] Found no result in cache for key repository_lookup_quayorg_quayrepo; calling loader gunicorn-registry stdout | 2025-09-26 08:36:30,540 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['quayorg', 'quayrepo', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,542 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,542 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,543 [258] [DEBUG] [data.cache.impl] Got loaded result for key repository_lookup_quayorg_quayrepo: {'id': 1, 'visibility': {'id': 2, 'name': 'private'}, 'kind': {'id': 1, 'name': 'image'}, 'state': , 'namespace_user': {'stripe_id': None}} gunicorn-registry stdout | 2025-09-26 08:36:30,543 [258] [DEBUG] [data.cache.impl] Caching loaded result for key repository_lookup_quayorg_quayrepo with expiration {'id': 1, 'visibility': {'id': 2, 'name': 'private'}, 'kind': {'id': 1, 'name': 'image'}, 'state': , 'namespace_user': {'stripe_id': None}}: 120s gunicorn-registry stdout | 2025-09-26 08:36:30,543 [258] [DEBUG] [data.cache.impl] Cached loaded result for key repository_lookup_quayorg_quayrepo with expiration {'id': 1, 'visibility': {'id': 2, 'name': 'private'}, 'kind': {'id': 1, 'name': 'image'}, 'state': , 'namespace_user': {'stripe_id': None}}: 120s gunicorn-registry stdout | 2025-09-26 08:36:30,544 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:cfdb19c8fdc4b5ff3f5ed39b6958b1ac6aab0d41a39b00b15eafa9f3dab4e405', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,545 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,546 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['86c9f0ff-30c6-4d94-bde8-375b2a721ed8']) gunicorn-registry stdout | 2025-09-26 08:36:30,547 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:30,548 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:30,548 [258] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc'} gunicorn-registry stdout | 2025-09-26 08:36:30,548 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,548 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,549 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,549 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,549 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,549 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,549 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,549 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:30,549 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:30,549 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:30,549 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:30,549 [258] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,549 [258] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,549 [258] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,549 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:30,550 [258] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,550 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,550 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,550 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,550 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:30,550 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083630Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:30,550 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083630Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 70a79cc1acae851345bfe71de078055198e648b5045ec506f16c19916bd4c884 gunicorn-registry stdout | 2025-09-26 08:36:30,550 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 6c6f8007a0db4fc2a5176cf74d2130e65ecbd603bdb58793d6694c1246715cf4 gunicorn-registry stdout | 2025-09-26 08:36:30,550 [258] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,550 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:30,551 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:30,616 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc HTTP/1.1" 200 7698 gunicorn-registry stdout | 2025-09-26 08:36:30,617 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8dsq-bxd2sa-1fj', 'x-amz-id-2': 'mg0l8dsq-bxd2sa-1fj', 'ETag': '"7d1bc3fb37637dd0a81dabcf72e9bbfc-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:30 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '7698', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:30 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:30,617 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:36:30,617 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:30,617 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:30,617 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:30,618 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8dsq-bxd2sa-1fj', 'HostId': 'mg0l8dsq-bxd2sa-1fj', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8dsq-bxd2sa-1fj', 'x-amz-id-2': 'mg0l8dsq-bxd2sa-1fj', 'etag': '"7d1bc3fb37637dd0a81dabcf72e9bbfc-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:30 GMT', 'content-type': 'application/octet-stream', 'content-length': '7698', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:36:30 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 30, tzinfo=tzutc()), 'ContentLength': 7698, 'ETag': '"7d1bc3fb37637dd0a81dabcf72e9bbfc-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:36:30,621 [258] [DEBUG] [peewee] ('((SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL ((SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "uploadedblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1") UNION ALL (SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "uploadedblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q2"))) UNION ALL (((SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "uploadedblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q3") UNION ALL (SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "uploadedblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q4")) UNION ALL ((SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "uploadedblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q5") UNION ALL (SELECT * FROM (SELECT "t7"."id", "t7"."content_checksum", "t7"."image_size", "t7"."uuid", "t7"."cas_path", "t7"."uncompressed_size" FROM "imagestorage" AS "t7" INNER JOIN "uploadedblob" AS "t8" ON ("t8"."blob_id" = "t7"."id") WHERE (("t8"."repository_id" = %s) AND ("t7"."content_checksum" = %s)) LIMIT %s) AS "q6")))', [1, 'sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 1, 1, 'sha256:cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a', 1, 1, 'sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160', 1, 1, 'sha256:f93b7d3396c22354724b502c69276a730003297e4c24bd6d03fc16b0e50090d3', 1, 1, 'sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d', 1, 1, 'sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 1, 1, 'sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1', 1]) gunicorn-registry stdout | 2025-09-26 08:36:30,625 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."digest" = %s) AND ("t1"."repository_id" = %s)) LIMIT %s OFFSET %s', ['sha256:cfdb19c8fdc4b5ff3f5ed39b6958b1ac6aab0d41a39b00b15eafa9f3dab4e405', 1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,626 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "mediatype" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:30,627 [258] [DEBUG] [peewee] ('INSERT INTO "manifest" ("repository_id", "digest", "media_type_id", "manifest_bytes", "config_media_type", "layers_compressed_size", "subject", "subject_backfilled", "artifact_type", "artifact_type_backfilled") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifest"."id"', [1, 'sha256:cfdb19c8fdc4b5ff3f5ed39b6958b1ac6aab0d41a39b00b15eafa9f3dab4e405', 15, '{"schemaVersion":2,"mediaType":"application/vnd.docker.distribution.manifest.v2+json","config":{"mediaType":"application/vnd.docker.container.image.v1+json","size":7698,"digest":"sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc"},"layers":[{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","size":32740930,"digest":"sha256:f93b7d3396c22354724b502c69276a730003297e4c24bd6d03fc16b0e50090d3"},{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","size":2994,"digest":"sha256:cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a"},{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","size":1494848,"digest":"sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d"},{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","size":10012625,"digest":"sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1"},{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","size":147,"digest":"sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9"},{"mediaType":"application/vnd.docker.image.rootfs.diff.tar.gzip","size":600,"digest":"sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160"}]}', 'application/vnd.docker.container.image.v1+json', 44252144, None, True, None, True]) gunicorn-registry stdout | 2025-09-26 08:36:30,629 [258] [DEBUG] [peewee] ('INSERT INTO "manifestblob" ("repository_id", "manifest_id", "blob_id") VALUES (%s, %s, %s), (%s, %s, %s), (%s, %s, %s), (%s, %s, %s), (%s, %s, %s), (%s, %s, %s), (%s, %s, %s) RETURNING "manifestblob"."id"', [1, 1, 1, 1, 1, 2, 1, 1, 3, 1, 1, 4, 1, 1, 5, 1, 1, 6, 1, 1, 7]) gunicorn-registry stdout | 2025-09-26 08:36:30,630 [258] [DEBUG] [peewee] ('SELECT "t1"."namespace_user_id" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,632 [258] [DEBUG] [peewee] ('SELECT 1 FROM "user" AS "t1" WHERE ((("t1"."id" = %s) AND "t1"."enabled") AND NOT "t1"."robot") LIMIT %s', [2, 1]) gunicorn-registry stdout | 2025-09-26 08:36:30,632 [258] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [2, 7, 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:30,633 [258] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [2, 4, 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:30,635 [258] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [2, 1, 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:30,635 [258] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [2, 6, 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:30,636 [258] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [2, 3, 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:30,637 [258] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [2, 2, 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:30,638 [258] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [2, 5, 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:30,638 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,639 [258] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t2"."id" = "t1"."repository_id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."manifest_id" != %s)) AND ("t2"."state" != %s)) LIMIT %s', [2, 1, 3, 1]) gunicorn-registry stdout | 2025-09-26 08:36:30,639 [258] [INFO] [data.model.quota] inserting namespace size for manifest 1 in namespace 2 gunicorn-registry stdout | 2025-09-26 08:36:30,640 [258] [DEBUG] [peewee] ('INSERT INTO "quotanamespacesize" ("namespace_user_id", "size_bytes", "backfill_start_ms", "backfill_complete") VALUES (%s, %s, %s, %s) RETURNING "quotanamespacesize"."id"', [2, 44259842, 0, True]) gunicorn-registry stdout | 2025-09-26 08:36:30,641 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotarepositorysize" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,642 [258] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."manifest_id" != %s)) LIMIT %s', [1, 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:30,642 [258] [INFO] [data.model.quota] inserting repository size for manifest 1 in repository 1 gunicorn-registry stdout | 2025-09-26 08:36:30,642 [258] [DEBUG] [peewee] ('INSERT INTO "quotarepositorysize" ("repository_id", "size_bytes", "backfill_start_ms", "backfill_complete") VALUES (%s, %s, %s, %s) RETURNING "quotarepositorysize"."id"', [1, 44259842, 0, True]) gunicorn-registry stdout | 2025-09-26 08:36:30,645 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['quayorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,646 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,647 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['quayorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,648 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['quayorg']) gunicorn-registry stdout | 2025-09-26 08:36:30,649 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."name" FROM "manifest" AS "t1" INNER JOIN "mediatype" AS "t2" ON ("t1"."media_type_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,651 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id", "t2"."id", "t2"."repository_id", "t2"."digest", "t2"."media_type_id", "t2"."manifest_bytes", "t2"."config_media_type", "t2"."layers_compressed_size", "t2"."subject", "t2"."subject_backfilled", "t2"."artifact_type", "t2"."artifact_type_backfilled" FROM "tag" AS "t1" INNER JOIN "manifest" AS "t2" ON ("t1"."manifest_id" = "t2"."id") WHERE (((("t1"."repository_id" = %s) AND ("t1"."name" = %s)) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" > %s))) AND ("t1"."hidden" = %s)) LIMIT %s OFFSET %s', [1, 'redis', None, 1758875790650, False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,653 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "tagkind" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:30,654 [258] [DEBUG] [peewee] ('INSERT INTO "tag" ("name", "repository_id", "manifest_id", "lifetime_start_ms", "lifetime_end_ms", "immutable", "hidden", "reversion", "tag_kind_id") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "tag"."id"', ['redis', 1, 1, 1758875790650, None, False, False, False, 1]) gunicorn-registry stdout | 2025-09-26 08:36:30,656 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,657 [258] [DEBUG] [util.audit] Checking publishing push_repo to the user events system gunicorn-registry stdout | 2025-09-26 08:36:30,657 [258] [DEBUG] [util.audit] Publishing push_repo to the user events system gunicorn-registry stdout | 2025-09-26 08:36:30,658 [258] [DEBUG] [util.audit] Logging the push_repo to analytics engine gunicorn-registry stdout | 2025-09-26 08:36:30,658 [258] [DEBUG] [util.audit] Resolving IP address 10.129.4.11 gunicorn-registry stdout | 2025-09-26 08:36:30,659 [258] [DEBUG] [util.audit] Resolved IP address 10.129.4.11 gunicorn-registry stdout | 2025-09-26 08:36:30,660 [258] [DEBUG] [util.audit] Logging the push_repo to logs system gunicorn-registry stdout | 2025-09-26 08:36:30,660 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."username" = %s) LIMIT %s OFFSET %s', ['quayorg', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:30,661 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "logentrykind" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:30,663 [258] [DEBUG] [peewee] ('INSERT INTO "logentry3" ("kind_id", "account_id", "performer_id", "repository_id", "datetime", "ip", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s) RETURNING "logentry3"."id"', [42, 2, 1, 1, datetime.datetime(2025, 9, 26, 8, 36, 30, 660154), '10.129.4.11', '{"repo": "quayrepo", "namespace": "quayorg", "user-agent": "skopeo/1.14.5", "tag": "redis", "username": "quay", "resolved_ip": {"provider": "internet", "service": null, "sync_token": "1645662201", "country_iso_code": null, "aws_region": null, "continent": null}}']) gunicorn-registry stdout | 2025-09-26 08:36:30,665 [258] [DEBUG] [util.audit] Track and log of push_repo complete gunicorn-registry stdout | 2025-09-26 08:36:30,666 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."repository_id", "t1"."event_id", "t1"."method_id", "t1"."title", "t1"."config_json", "t1"."event_config_json", "t1"."number_of_failures", "t1"."last_ran_ms", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state", "t3"."id", "t3"."uuid", "t3"."username", "t3"."password_hash", "t3"."email", "t3"."verified", "t3"."stripe_id", "t3"."organization", "t3"."robot", "t3"."invoice_email", "t3"."invalid_login_attempts", "t3"."last_invalid_login", "t3"."removed_tag_expiration_s", "t3"."enabled", "t3"."invoice_email_address", "t3"."given_name", "t3"."family_name", "t3"."company", "t3"."location", "t3"."maximum_queued_builds_count", "t3"."creation_date", "t3"."last_accessed" FROM "repositorynotification" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") INNER JOIN "user" AS "t3" ON ("t2"."namespace_user_id" = "t3"."id") INNER JOIN "externalnotificationevent" AS "t4" ON ("t1"."event_id" = "t4"."id") WHERE ((("t3"."username" = %s) AND ("t2"."name" = %s)) AND ("t4"."name" = %s))', ['quayorg', 'quayrepo', 'repo_push']) gunicorn-registry stdout | 2025-09-26 08:36:30,668 [258] [DEBUG] [app] Ending request: urn:request:2bb62929-0aa4-4865-9fcc-4f1fb0ac3a43 (/v2/quayorg/quayrepo/manifests/redis) {'endpoint': 'v2.write_manifest_by_tagname', 'request_id': 'urn:request:2bb62929-0aa4-4865-9fcc-4f1fb0ac3a43', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/quayorg/quayrepo/manifests/redis', 'path': '/v2/quayorg/quayrepo/manifests/redis', 'parameters': {}, 'json_body': {'schemaVersion': 2, 'mediaType': 'application/vnd.docker.distribution.manifest.v2+json', 'config': {'mediaType': 'application/vnd.docker.container.image.v1+json', 'size': 7698, 'digest': 'sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc'}, 'layers': [{'mediaType': 'application/vnd.docker.image.rootfs.diff.tar.gzip', 'size': 32740930, 'digest': 'sha256:f93b7d3396c22354724b502c69276a730003297e4c24bd6d03fc16b0e50090d3'}, {'mediaType': 'application/vnd.docker.image.rootfs.diff.tar.gzip', 'size': 2994, 'digest': 'sha256:cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a'}, {'mediaType': 'application/vnd.docker.image.rootfs.diff.tar.gzip', 'size': 1494848, 'digest': 'sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d'}, {'mediaType': 'application/vnd.docker.image.rootfs.diff.tar.gzip', 'size': 10012625, 'digest': 'sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1'}, {'mediaType': 'application/vnd.docker.image.rootfs.diff.tar.gzip', 'size': 147, 'digest': 'sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9'}, {'mediaType': 'application/vnd.docker.image.rootfs.diff.tar.gzip', 'size': 600, 'digest': 'sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160'}]}, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:30,669 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:30,669 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:30,669 [258] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:30 +0000] "PUT /v2/quayorg/quayrepo/manifests/redis HTTP/1.1" 201 2 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:30 +0000] "PUT /v2/quayorg/quayrepo/manifests/redis HTTP/1.1" 201 2 "-" "skopeo/1.14.5" (0.134 3011 0.134) gunicorn-registry stdout | 2025-09-26 08:36:30,671 [258] [DEBUG] [data.userevent] Published user event docker-cli: {'action': 'push_repo', 'repository': 'quayrepo', 'namespace': 'quayorg'} notificationworker stdout | 2025-09-26 08:36:30,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:36:30,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:37.771811+00:00 (in 7.078252 seconds) notificationworker stdout | 2025-09-26 08:36:30,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:40 GMT)" (scheduled at 2025-09-26 08:36:30.692901+00:00) notificationworker stdout | 2025-09-26 08:36:30,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:36:30,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 36, 30, 693923), True, datetime.datetime(2025, 9, 26, 8, 36, 30, 693923), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:36:30,700 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:36:30,700 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:36:30,700 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:40 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:36:31,579 [251] [DEBUG] [app] Starting request: urn:request:2f709626-22a5-4dc3-8e39-d900d52387ae (/v2/) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:31,580 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {} gunicorn-registry stdout | 2025-09-26 08:36:31,580 [251] [DEBUG] [auth.registry_jwt_auth] No auth header. gunicorn-registry stdout | 2025-09-26 08:36:31,580 [251] [DEBUG] [app] Ending request: urn:request:2f709626-22a5-4dc3-8e39-d900d52387ae (/v2/) {'endpoint': 'v2.v2_support_enabled', 'request_id': 'urn:request:2f709626-22a5-4dc3-8e39-d900d52387ae', 'remote_addr': '10.131.2.20', 'http_method': 'GET', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/', 'path': '/v2/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:31,581 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:31 +0000] "GET /v2/ HTTP/1.1" 401 4 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:31 +0000] "GET /v2/ HTTP/1.1" 401 4 "-" "skopeo/1.14.5" (0.002 538 0.002) proxycacheblobworker stdout | 2025-09-26 08:36:32,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:36:32,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:42.477454+00:00 (in 9.999568 seconds) proxycacheblobworker stdout | 2025-09-26 08:36:32,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:42 GMT)" (scheduled at 2025-09-26 08:36:32.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:36:32,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:36:32,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 36, 32, 478246), True, datetime.datetime(2025, 9, 26, 8, 36, 32, 478246), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:36:32,484 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:36:32,484 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:36:32,484 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:42 GMT)" executed successfully storagereplication stdout | 2025-09-26 08:36:32,531 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} gunicorn-registry stdout | 2025-09-26 08:36:32,559 [251] [DEBUG] [app] Starting request: urn:request:beb1bf6a-bae1-450e-8b5f-c1afdee1118e (/v2/testorg/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:32,559 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:32,560 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:32,560 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:32,561 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:32,561 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:32,561 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:32,561 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:32,561 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:32,562 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:32,564 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:32,564 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:32,566 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:32,567 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:32,568 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:32,569 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:32,570 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:32,571 [251] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [2, 'eb9608a8-eb9b-410a-9b41-973ca4e6ea39', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 36, 32, 570885)]) gunicorn-registry stdout | 2025-09-26 08:36:32,573 [251] [DEBUG] [app] Ending request: urn:request:beb1bf6a-bae1-450e-8b5f-c1afdee1118e (/v2/testorg/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:beb1bf6a-bae1-450e-8b5f-c1afdee1118e', 'remote_addr': '10.129.4.11', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/', 'path': '/v2/testorg/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:32,573 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:32,573 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:32,573 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:32 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:32 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.015 1693 0.015) namespacegcworker stdout | 2025-09-26 08:36:32,923 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-web stdout | 2025-09-26 08:36:33,199 [247] [DEBUG] [app] Starting request: urn:request:b3eaa153-5d39-405c-be4c-d85af856d616 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:36:33,201 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:36:33,203 [256] [DEBUG] [app] Starting request: urn:request:466a49e4-2967-4a7e-8906-c8cab412c2cb (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:36:33,203 [256] [DEBUG] [app] Ending request: urn:request:466a49e4-2967-4a7e-8906-c8cab412c2cb (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:466a49e4-2967-4a7e-8906-c8cab412c2cb', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:36:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.003 162 0.003) gunicorn-registry stdout | 2025-09-26 08:36:33,204 [256] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:36:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:36:33,204 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:36:33,207 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:36:33,209 [247] [DEBUG] [app] Starting request: urn:request:878066d5-b00c-4d10-bc14-2b3643b25a23 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:36:33,209 [247] [DEBUG] [app] Ending request: urn:request:878066d5-b00c-4d10-bc14-2b3643b25a23 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:878066d5-b00c-4d10-bc14-2b3643b25a23', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:36:33 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:36:33,210 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:36:33 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:36:33,210 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:36:33,211 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:36:33,211 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:36:33,211 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:36:33,215 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:36:33,215 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:36:33,219 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:36:33,220 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:36:33,220 [247] [DEBUG] [app] Ending request: urn:request:b3eaa153-5d39-405c-be4c-d85af856d616 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:b3eaa153-5d39-405c-be4c-d85af856d616', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:36:33,220 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:36:33,221 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:36:33 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:36:33 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.022 118 0.022) gunicorn-web stdout | 2025-09-26 08:36:33,261 [247] [DEBUG] [app] Starting request: urn:request:ffeecfc6-6d91-4133-bfaa-38cd10e2672e (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:36:33,263 [251] [DEBUG] [app] Starting request: urn:request:d0bef2a6-3660-4fb5-8a28-dd8cb4cdb632 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:36:33,263 [251] [DEBUG] [app] Ending request: urn:request:d0bef2a6-3660-4fb5-8a28-dd8cb4cdb632 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:d0bef2a6-3660-4fb5-8a28-dd8cb4cdb632', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:36:33,264 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:36:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:36:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:36:33,264 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:36:33,265 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:36:33,266 [250] [DEBUG] [app] Starting request: urn:request:fef021f5-2df5-4cb0-98c3-4481601983da (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:36:33,266 [250] [DEBUG] [app] Ending request: urn:request:fef021f5-2df5-4cb0-98c3-4481601983da (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:fef021f5-2df5-4cb0-98c3-4481601983da', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:36:33,266 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:36:33 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:36:33,267 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:36:33 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:36:33,267 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:36:33,267 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:36:33,267 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:36:33,271 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:36:33,271 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:36:33,275 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:36:33,276 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:36:33,277 [247] [DEBUG] [app] Ending request: urn:request:ffeecfc6-6d91-4133-bfaa-38cd10e2672e (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:ffeecfc6-6d91-4133-bfaa-38cd10e2672e', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:36:33,277 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:36:33,278 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:36:33 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:36:33 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.017 118 0.016) gunicorn-registry stdout | 2025-09-26 08:36:33,910 [256] [DEBUG] [app] Starting request: urn:request:fc4008a8-2d0f-4525-a4b8-7e094692cf60 (/v2/testorg/alpine/blobs/sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:33,910 [256] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:33,910 [256] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:33,910 [256] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:33,911 [256] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:33,912 [256] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:33,912 [256] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:33,912 [256] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:33,912 [256] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:33,912 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:33,914 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:33,915 [256] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:33,915 [256] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61_2 gunicorn-registry stdout | 2025-09-26 08:36:33,916 [256] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:33,916 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:33,923 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:33,924 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:33,926 [256] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:33,926 [256] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:33,927 [256] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61_2: None gunicorn-registry stdout | 2025-09-26 08:36:33,927 [256] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61_2: None gunicorn-registry stdout | 2025-09-26 08:36:33,927 [256] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:33,928 [256] [DEBUG] [app] Ending request: urn:request:fc4008a8-2d0f-4525-a4b8-7e094692cf60 (/v2/testorg/alpine/blobs/sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:fc4008a8-2d0f-4525-a4b8-7e094692cf60', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'path': '/v2/testorg/alpine/blobs/sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:33,928 [256] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:33,928 [256] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:33,928 [256] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:33 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:33 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.019 1714 0.019) manifestsubjectbackfillworker stdout | 2025-09-26 08:36:33,984 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:36:33,985 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:17.985743+00:00 (in 44.000559 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:36:33,985 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:33 GMT)" (scheduled at 2025-09-26 08:36:33.984400+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:36:33,985 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."subject_backfilled" = %s) OR ("t1"."subject_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:36:33,991 [64] [DEBUG] [__main__] Manifest subject backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:36:33,991 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:36:33,991 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:33 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:36:34,047 [251] [DEBUG] [app] Starting request: urn:request:a9fedf53-4258-479e-ab63-77927937dee0 (/v2/testorg/alpine/blobs/uploads/afd4c7cc-834b-477f-86ce-72d570b601fe) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:34,047 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'afd4c7cc-834b-477f-86ce-72d570b601fe', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:34,047 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:34,047 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:34,048 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:34,048 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:34,048 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:34,048 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:34,048 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:34,049 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,051 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,052 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,053 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,054 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,055 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,056 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,058 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:34,059 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['afd4c7cc-834b-477f-86ce-72d570b601fe', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,060 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:34,060 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:34,060 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:34,061 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:34,062 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:34,062 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,062 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,062 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,062 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,062 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,062 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,062 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,062 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,062 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:34,062 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:34,062 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:34,062 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:34,063 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,063 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,063 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,063 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:34,063 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,063 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,063 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,063 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,063 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:34,063 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083634Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:34,063 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083634Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | a0c694b65f00f6e6518bd0606fbce3ce93a9113b0451ad38dbad25e1d4b2b296 gunicorn-registry stdout | 2025-09-26 08:36:34,063 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | ba6764d2cab86a142641f8bd957168bb69509d32e71ae99fdd14dac9686f8d8c gunicorn-registry stdout | 2025-09-26 08:36:34,063 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,063 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:34,064 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:34,064 [251] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | 2025-09-26 08:36:34,099 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:34,099 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8giy-49560d-jsk', 'x-amz-id-2': 'mg0l8giy-49560d-jsk', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:34 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:34,099 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a6568d65092d73ec60008f93349' gunicorn-registry stdout | 2025-09-26 08:36:34,099 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,100 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:34,100 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,100 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8giy-49560d-jsk', 'HostId': 'mg0l8giy-49560d-jsk', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8giy-49560d-jsk', 'x-amz-id-2': 'mg0l8giy-49560d-jsk', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:34 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65', 'UploadId': '68d65092d73ec60008f93349'} gunicorn-registry stdout | 2025-09-26 08:36:34,100 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:34,100 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:36:34,100 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:36:34,101 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65', 'UploadId': '68d65092d73ec60008f93349', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1ba12d9e0>, 'ContentLength': 581} gunicorn-registry stdout | 2025-09-26 08:36:34,101 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,101 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,101 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,101 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,101 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,101 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,102 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,102 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,102 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:34,102 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:34,102 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:34,102 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:34,102 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,102 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,102 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:36:34,102 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,102 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,102 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65', 'query_string': {'uploadId': '68d65092d73ec60008f93349', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '581', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'tkTLMYTjV4AlyeBRHXX5Iw==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1ba12d9e0>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65?uploadId=68d65092d73ec60008f93349&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65', 'UploadId': '68d65092d73ec60008f93349', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1ba12d9e0>, 'ContentLength': 581}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:34,103 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,103 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,103 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,103 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,103 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:34,103 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65 gunicorn-registry stdout | partNumber=1&uploadId=68d65092d73ec60008f93349 gunicorn-registry stdout | content-length:581 gunicorn-registry stdout | content-md5:tkTLMYTjV4AlyeBRHXX5Iw== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083634Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:34,103 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083634Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 3691d51c0ba2fc701ca336d46dcc1d3f2ac45e73464a6234cc9e5351e19eb69f gunicorn-registry stdout | 2025-09-26 08:36:34,103 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 7b0c84ed4c2a641a8990c6e715047e71f792c6203b477b26b1036473de6d3cb5 gunicorn-registry stdout | 2025-09-26 08:36:34,103 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,103 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:34,104 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:34,104 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:34,106 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:36:34,187 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65?uploadId=68d65092d73ec60008f93349&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:34,187 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8gjd-4ikgfy-oqq', 'x-amz-id-2': 'mg0l8gjd-4ikgfy-oqq', 'ETag': '"b644cb3184e3578025c9e0511d75f923"', 'Date': 'Fri, 26 Sep 2025 08:36:34 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:36:34,187 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:34,188 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,188 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:34,188 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,188 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8gjd-4ikgfy-oqq', 'HostId': 'mg0l8gjd-4ikgfy-oqq', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8gjd-4ikgfy-oqq', 'x-amz-id-2': 'mg0l8gjd-4ikgfy-oqq', 'etag': '"b644cb3184e3578025c9e0511d75f923"', 'date': 'Fri, 26 Sep 2025 08:36:34 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"b644cb3184e3578025c9e0511d75f923"'} gunicorn-registry stdout | 2025-09-26 08:36:34,188 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65', 'UploadId': '68d65092d73ec60008f93349', 'MultipartUpload': {'Parts': [{'ETag': '"b644cb3184e3578025c9e0511d75f923"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:36:34,188 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,188 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,188 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,189 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,189 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,189 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,189 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,189 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:34,189 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:34,189 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:34,189 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:34,190 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,190 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,190 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,190 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65', 'query_string': {'uploadId': '68d65092d73ec60008f93349'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"b644cb3184e3578025c9e0511d75f923"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65?uploadId=68d65092d73ec60008f93349', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65', 'UploadId': '68d65092d73ec60008f93349', 'MultipartUpload': {'Parts': [{'ETag': '"b644cb3184e3578025c9e0511d75f923"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:34,190 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,190 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,190 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,191 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,191 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:34,191 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65 gunicorn-registry stdout | uploadId=68d65092d73ec60008f93349 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:765136d0ab380ce723716df7421808540f54bcda13a33ec709a892fb76e0d01c gunicorn-registry stdout | x-amz-date:20250926T083634Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 765136d0ab380ce723716df7421808540f54bcda13a33ec709a892fb76e0d01c gunicorn-registry stdout | 2025-09-26 08:36:34,191 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083634Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | e928f8b869821fb4cf9696ec50f38df13233492efd9d9bf0be702260163e3b55 gunicorn-registry stdout | 2025-09-26 08:36:34,191 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | a56484469dbd807c13ecbf0ace6e7c081282260e0af0fe7f8783f81b00dd3ab0 gunicorn-registry stdout | 2025-09-26 08:36:34,191 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,191 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:34,191 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:34,206 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65?uploadId=68d65092d73ec60008f93349 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:36:34,207 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8gls-5yaase-6ch', 'x-amz-id-2': 'mg0l8gls-5yaase-6ch', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:36:34 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:34,207 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65"c953f11b655c667e87bf2e6d854fb992-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65?uploadId=68d65092d73ec60008f93349' gunicorn-registry stdout | 2025-09-26 08:36:34,207 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,207 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,207 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:34,207 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,207 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8gls-5yaase-6ch', 'HostId': 'mg0l8gls-5yaase-6ch', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8gls-5yaase-6ch', 'x-amz-id-2': 'mg0l8gls-5yaase-6ch', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:36:34 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65?uploadId=68d65092d73ec60008f93349', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65', 'ETag': '"c953f11b655c667e87bf2e6d854fb992-1"'} gunicorn-registry stdout | 2025-09-26 08:36:34,207 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:34,208 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:34,208 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 581 bytes to blob afd4c7cc-834b-477f-86ce-72d570b601fe took 0.14800333976745605 seconds gunicorn-registry stdout | 2025-09-26 08:36:34,209 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['afd4c7cc-834b-477f-86ce-72d570b601fe', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,211 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'afd4c7cc-834b-477f-86ce-72d570b601fe', 581, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwNCJdfX01OGQ3YTUwZTJiNzhkMjc1ZWU3ZDFjMjE4NDg5ZjI0MzkwODQ0NDlkODk1ZmExN2VlZGU2YzYxYWIyYwUAAAAAAAAAABIAAAAAAAAujfPe/ynUYQRAvcgHkUIAKNJv/qthHLy3cXWJ+bJqqpRiLg==', 9, '{"chunks": [["uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65", 0, 581]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 36, 34, 590), None, None, 9]) gunicorn-registry stdout | 2025-09-26 08:36:34,213 [251] [DEBUG] [app] Ending request: urn:request:a9fedf53-4258-479e-ab63-77927937dee0 (/v2/testorg/alpine/blobs/uploads/afd4c7cc-834b-477f-86ce-72d570b601fe) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:a9fedf53-4258-479e-ab63-77927937dee0', 'remote_addr': '10.129.4.11', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/afd4c7cc-834b-477f-86ce-72d570b601fe', 'path': '/v2/testorg/alpine/blobs/uploads/afd4c7cc-834b-477f-86ce-72d570b601fe', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:34,213 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:34,213 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:34,214 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:34 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/afd4c7cc-834b-477f-86ce-72d570b601fe HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:34 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/afd4c7cc-834b-477f-86ce-72d570b601fe HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.168 2353 0.167) gunicorn-registry stdout | 2025-09-26 08:36:34,253 [251] [DEBUG] [app] Starting request: urn:request:9ec9cd1b-22ad-4dbc-872d-40c459a266fb (/v2/testorg/alpine/blobs/uploads/afd4c7cc-834b-477f-86ce-72d570b601fe) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:34,254 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'afd4c7cc-834b-477f-86ce-72d570b601fe', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:34,254 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:34,254 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:34,255 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:34,255 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:34,255 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:34,255 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:34,255 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:34,256 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,257 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,258 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,260 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,261 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,262 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,263 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,264 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:34,265 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['afd4c7cc-834b-477f-86ce-72d570b601fe', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,266 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:34,266 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:34,267 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:34,267 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:34,267 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4e1e401e-240d-46bc-b0c2-626fa1c4447d', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:34,268 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,268 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,268 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,268 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,268 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,268 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,268 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,268 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,268 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:34,268 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:34,268 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:34,268 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:34,268 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,268 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,268 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,268 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/4e1e401e-240d-46bc-b0c2-626fa1c4447d?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4e1e401e-240d-46bc-b0c2-626fa1c4447d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4e1e401e-240d-46bc-b0c2-626fa1c4447d?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4e1e401e-240d-46bc-b0c2-626fa1c4447d', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:34,268 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,268 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,269 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,269 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,269 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:34,269 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4e1e401e-240d-46bc-b0c2-626fa1c4447d gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083634Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:34,269 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083634Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | c865ed481ed78f88f991e299fad3dd0499070b472d01ffd7ee49d7cc4c63e5ef gunicorn-registry stdout | 2025-09-26 08:36:34,269 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 142b08d1f898f9f0eb0147a4e4b8434dc3556f756e3660b1e6cbb5e75d85621d gunicorn-registry stdout | 2025-09-26 08:36:34,269 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,269 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:34,269 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:34,275 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4e1e401e-240d-46bc-b0c2-626fa1c4447d?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:34,275 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8gny-78rdv3-12d7', 'x-amz-id-2': 'mg0l8gny-78rdv3-12d7', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:34 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:34,275 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/4e1e401e-240d-46bc-b0c2-626fa1c4447d68d65092d73ec60008f9334f' gunicorn-registry stdout | 2025-09-26 08:36:34,276 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,276 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:34,276 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,276 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8gny-78rdv3-12d7', 'HostId': 'mg0l8gny-78rdv3-12d7', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8gny-78rdv3-12d7', 'x-amz-id-2': 'mg0l8gny-78rdv3-12d7', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:34 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4e1e401e-240d-46bc-b0c2-626fa1c4447d', 'UploadId': '68d65092d73ec60008f9334f'} gunicorn-registry stdout | 2025-09-26 08:36:34,276 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:34,276 [251] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4e1e401e-240d-46bc-b0c2-626fa1c4447d', 'UploadId': '68d65092d73ec60008f9334f'} gunicorn-registry stdout | 2025-09-26 08:36:34,276 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,276 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,276 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,276 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,276 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,276 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,276 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:34,276 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:34,277 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:34,277 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:34,277 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,277 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,277 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,277 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/4e1e401e-240d-46bc-b0c2-626fa1c4447d', 'query_string': {'uploadId': '68d65092d73ec60008f9334f'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4e1e401e-240d-46bc-b0c2-626fa1c4447d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4e1e401e-240d-46bc-b0c2-626fa1c4447d?uploadId=68d65092d73ec60008f9334f', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4e1e401e-240d-46bc-b0c2-626fa1c4447d', 'UploadId': '68d65092d73ec60008f9334f'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:34,277 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,277 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,277 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,277 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,277 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:34,277 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4e1e401e-240d-46bc-b0c2-626fa1c4447d gunicorn-registry stdout | uploadId=68d65092d73ec60008f9334f gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083634Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:34,277 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083634Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 11b87e212eba966c903d6f3225e2996efbff2c08305961a1428bc3b13d325d5a gunicorn-registry stdout | 2025-09-26 08:36:34,277 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 3298d54fc5db7b004ab97ea889331cf5a6e79696dbf23170dc43e44a9f9b84a8 gunicorn-registry stdout | 2025-09-26 08:36:34,277 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,277 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:34,278 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:34,284 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4e1e401e-240d-46bc-b0c2-626fa1c4447d?uploadId=68d65092d73ec60008f9334f HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:36:34,285 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8go7-7dno9m-mec', 'x-amz-id-2': 'mg0l8go7-7dno9m-mec', 'Date': 'Fri, 26 Sep 2025 08:36:34 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:34,285 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:34,285 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,285 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:34,285 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,285 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8go7-7dno9m-mec', 'HostId': 'mg0l8go7-7dno9m-mec', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8go7-7dno9m-mec', 'x-amz-id-2': 'mg0l8go7-7dno9m-mec', 'date': 'Fri, 26 Sep 2025 08:36:34 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:36:34,285 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob afd4c7cc-834b-477f-86ce-72d570b601fe took 0.01854729652404785 seconds gunicorn-registry stdout | 2025-09-26 08:36:34,285 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['afd4c7cc-834b-477f-86ce-72d570b601fe', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,287 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'afd4c7cc-834b-477f-86ce-72d570b601fe', 581, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwNCJdfX01OGQ3YTUwZTJiNzhkMjc1ZWU3ZDFjMjE4NDg5ZjI0MzkwODQ0NDlkODk1ZmExN2VlZGU2YzYxYWIyYwUAAAAAAAAAABIAAAAAAAAujfPe/ynUYQRAvcgHkUIAKNJv/qthHLy3cXWJ+bJqqpRiLg==', 9, '{"chunks": [["uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65", 0, 581]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 36, 34, 590), None, None, 9]) gunicorn-registry stdout | 2025-09-26 08:36:34,288 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:34,288 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:34,288 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:34,291 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:34,291 [251] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61'} gunicorn-registry stdout | 2025-09-26 08:36:34,291 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,291 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,291 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,291 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,291 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,291 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,291 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,291 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:34,292 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:34,292 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:34,292 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:34,292 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,292 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,292 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,292 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:34,292 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,292 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,292 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,292 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,292 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:34,292 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083634Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:34,292 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083634Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 09c57f10073670de685dd7e23ebe5addcb3eb32ba8473979726f7871e268ed0d gunicorn-registry stdout | 2025-09-26 08:36:34,292 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | ebfc5a59fa04acb27084170527e5e41393ae476064c7d718dbce1b2952bef346 gunicorn-registry stdout | 2025-09-26 08:36:34,292 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,293 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:34,293 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:34,297 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:36:34,298 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8gom-7mofxp-aml', 'x-amz-id-2': 'mg0l8gom-7mofxp-aml', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:34 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:34,298 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:34,298 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,298 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:34,298 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,298 [251] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:36:34,298 [251] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:36:34,298 [251] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61 gunicorn-registry stdout | 2025-09-26 08:36:34,298 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:34,299 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:34,299 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:34,299 [251] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:36:34,299 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,299 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,299 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,299 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,299 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,299 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,299 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,300 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:34,300 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:34,300 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:34,300 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:34,300 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,300 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,300 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,300 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:34,300 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,300 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,300 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,300 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,300 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,300 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:34,300 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083634Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:34,300 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083634Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 2ec4cbf955217c1ad8e8ed8cacc069f2588ee966e46c6e2e0e32d200b6cf655e gunicorn-registry stdout | 2025-09-26 08:36:34,300 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 903a75db6baa3b1b0ef85b51d73573f9d501cd6015678680f9b6e899203249ba gunicorn-registry stdout | 2025-09-26 08:36:34,300 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,300 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,301 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:34,301 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:34,301 [251] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local autopruneworker stdout | 2025-09-26 08:36:34,313 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} gunicorn-registry stdout | 2025-09-26 08:36:34,329 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:34,330 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8gph-85igb7-64h', 'x-amz-id-2': 'mg0l8gph-85igb7-64h', 'ETag': '"c953f11b655c667e87bf2e6d854fb992-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:34 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '581', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:34 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:34,330 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:34,330 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,330 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:34,330 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,330 [251] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:36:34,330 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:34,331 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:34,331 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:34,331 [251] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'extra_args': {}, 'callbacks': [], 'size': 581} gunicorn-registry stdout | 2025-09-26 08:36:34,331 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,331 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,331 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,331 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,331 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,331 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,331 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,331 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,331 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,331 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,331 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:34,331 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:34,331 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:34,331 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:34,331 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,331 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,331 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,332 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:34,332 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,332 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,332 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,332 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,332 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,332 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:34,332 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/aa358370-3fb7-4c63-b4b5-bffc375e2a65 gunicorn-registry stdout | x-amz-date:20250926T083634Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:34,332 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083634Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 13d24455639abba1fae8f225c777bf040b86f955af05298af2507453b187908f gunicorn-registry stdout | 2025-09-26 08:36:34,332 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 3045de35e6db3f3984afbdcd196130209cc26f11f72d0867b89d8d964858daf6 gunicorn-registry stdout | 2025-09-26 08:36:34,332 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,332 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,332 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:34,332 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:34,333 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:34,363 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:36:34,363 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8gpq-8af90x-rur', 'x-amz-id-2': 'mg0l8gpq-8af90x-rur', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:36:34 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:34,363 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:36:34.000Z"c953f11b655c667e87bf2e6d854fb992-1"' gunicorn-registry stdout | 2025-09-26 08:36:34,363 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,363 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,364 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:34,364 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,364 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:34,364 [251] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob afd4c7cc-834b-477f-86ce-72d570b601fe with digest sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61 took 0.06595849990844727 seconds gunicorn-registry stdout | 2025-09-26 08:36:34,365 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['afd4c7cc-834b-477f-86ce-72d570b601fe', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,366 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,367 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['c70b9ca4-ad69-46a9-b948-303fc64ae9fe', 581, None, True, True, 'sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61']) gunicorn-registry stdout | 2025-09-26 08:36:34,368 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [9, 9]) gunicorn-registry stdout | 2025-09-26 08:36:34,368 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,369 [251] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [2, 9, datetime.datetime(2025, 9, 26, 8, 36, 34, 369211), datetime.datetime(2025, 9, 26, 9, 36, 34, 369196)]) gunicorn-registry stdout | 2025-09-26 08:36:34,370 [251] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [9]) gunicorn-registry stdout | 2025-09-26 08:36:34,372 [251] [DEBUG] [app] Ending request: urn:request:9ec9cd1b-22ad-4dbc-872d-40c459a266fb (/v2/testorg/alpine/blobs/uploads/afd4c7cc-834b-477f-86ce-72d570b601fe) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:9ec9cd1b-22ad-4dbc-872d-40c459a266fb', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/afd4c7cc-834b-477f-86ce-72d570b601fe?digest=sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'path': '/v2/testorg/alpine/blobs/uploads/afd4c7cc-834b-477f-86ce-72d570b601fe', 'parameters': {'digest': 'sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:34,372 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:34,372 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:34 +0000] "PUT /v2/testorg/alpine/blobs/uploads/afd4c7cc-834b-477f-86ce-72d570b601fe?digest=sha256%3Acea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.119 1849 0.119) gunicorn-registry stdout | 2025-09-26 08:36:34,372 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:34 +0000] "PUT /v2/testorg/alpine/blobs/uploads/afd4c7cc-834b-477f-86ce-72d570b601fe?digest=sha256%3Acea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" expiredappspecifictokenworker stdout | 2025-09-26 08:36:34,394 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} gunicorn-registry stdout | 2025-09-26 08:36:34,427 [258] [DEBUG] [app] Starting request: urn:request:eb00a6c8-82da-4dcc-a360-2fd37c69c4f9 (/v2/testorg/alpine/manifests/sha256:08001109a7d679fe33b04fa51d681bd40b975d8f5cea8c3ef6c0eccb6a7338ce) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:34,427 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'manifest_ref': 'sha256:08001109a7d679fe33b04fa51d681bd40b975d8f5cea8c3ef6c0eccb6a7338ce', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:34,427 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:34,427 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:34,428 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:34,428 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:34,429 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:34,429 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:34,429 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:34,430 [258] [DEBUG] [data.cache.cache_key] Loading repository lookup from cache_key: repository_lookup_testorg_alpine gunicorn-registry stdout | 2025-09-26 08:36:34,431 [258] [DEBUG] [data.cache.impl] Checking cache for key repository_lookup_testorg_alpine gunicorn-registry stdout | 2025-09-26 08:36:34,431 [258] [DEBUG] [data.cache.impl] Found no result in cache for key repository_lookup_testorg_alpine; calling loader gunicorn-registry stdout | 2025-09-26 08:36:34,432 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,434 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,435 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,435 [258] [DEBUG] [data.cache.impl] Got loaded result for key repository_lookup_testorg_alpine: {'id': 2, 'visibility': {'id': 2, 'name': 'private'}, 'kind': {'id': 1, 'name': 'image'}, 'state': , 'namespace_user': {'stripe_id': None}} gunicorn-registry stdout | 2025-09-26 08:36:34,435 [258] [DEBUG] [data.cache.impl] Caching loaded result for key repository_lookup_testorg_alpine with expiration {'id': 2, 'visibility': {'id': 2, 'name': 'private'}, 'kind': {'id': 1, 'name': 'image'}, 'state': , 'namespace_user': {'stripe_id': None}}: 120s gunicorn-registry stdout | 2025-09-26 08:36:34,436 [258] [DEBUG] [data.cache.impl] Cached loaded result for key repository_lookup_testorg_alpine with expiration {'id': 2, 'visibility': {'id': 2, 'name': 'private'}, 'kind': {'id': 1, 'name': 'image'}, 'state': , 'namespace_user': {'stripe_id': None}}: 120s gunicorn-registry stdout | 2025-09-26 08:36:34,437 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:08001109a7d679fe33b04fa51d681bd40b975d8f5cea8c3ef6c0eccb6a7338ce', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,438 [258] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL (SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "uploadedblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1")', [2, 'sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 1, 2, 'sha256:fe07684b16b82247c3539ed86a65ff37a76138ec25d380bd80c869a1a4c73236', 1]) gunicorn-registry stdout | 2025-09-26 08:36:34,440 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."digest" = %s) AND ("t1"."repository_id" = %s)) LIMIT %s OFFSET %s', ['sha256:08001109a7d679fe33b04fa51d681bd40b975d8f5cea8c3ef6c0eccb6a7338ce', 2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,441 [258] [DEBUG] [peewee] ('INSERT INTO "manifest" ("repository_id", "digest", "media_type_id", "manifest_bytes", "config_media_type", "layers_compressed_size", "subject", "subject_backfilled", "artifact_type", "artifact_type_backfilled") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifest"."id"', [2, 'sha256:08001109a7d679fe33b04fa51d681bd40b975d8f5cea8c3ef6c0eccb6a7338ce', 18, '{\n "schemaVersion": 2,\n "mediaType": "application/vnd.oci.image.manifest.v1+json",\n "config": {\n "mediaType": "application/vnd.oci.image.config.v1+json",\n "digest": "sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61",\n "size": 581\n },\n "layers": [\n {\n "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",\n "digest": "sha256:fe07684b16b82247c3539ed86a65ff37a76138ec25d380bd80c869a1a4c73236",\n "size": 3796846\n }\n ],\n "annotations": {\n "com.docker.official-images.bashbrew.arch": "amd64",\n "org.opencontainers.image.base.name": "scratch",\n "org.opencontainers.image.created": "2025-05-30T16:20:41Z",\n "org.opencontainers.image.revision": "5213c5a71c73d39d5896657909e753effb1c05ff",\n "org.opencontainers.image.source": "https://github.com/alpinelinux/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:x86_64",\n "org.opencontainers.image.url": "https://hub.docker.com/_/alpine",\n "org.opencontainers.image.version": "3.22.0"\n }\n}', 'application/vnd.oci.image.config.v1+json', 3796846, None, True, None, True]) gunicorn-registry stdout | 2025-09-26 08:36:34,442 [258] [DEBUG] [peewee] ('INSERT INTO "manifestblob" ("repository_id", "manifest_id", "blob_id") VALUES (%s, %s, %s), (%s, %s, %s) RETURNING "manifestblob"."id"', [2, 2, 8, 2, 2, 9]) gunicorn-registry stdout | 2025-09-26 08:36:34,443 [258] [DEBUG] [peewee] ('SELECT "t1"."namespace_user_id" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,444 [258] [DEBUG] [peewee] ('SELECT 1 FROM "user" AS "t1" WHERE ((("t1"."id" = %s) AND "t1"."enabled") AND NOT "t1"."robot") LIMIT %s', [3, 1]) gunicorn-registry stdout | 2025-09-26 08:36:34,445 [258] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [3, 9, 2, 1]) gunicorn-registry stdout | 2025-09-26 08:36:34,445 [258] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [3, 8, 2, 1]) gunicorn-registry stdout | 2025-09-26 08:36:34,446 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,447 [258] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t2"."id" = "t1"."repository_id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."manifest_id" != %s)) AND ("t2"."state" != %s)) LIMIT %s', [3, 2, 3, 1]) gunicorn-registry stdout | 2025-09-26 08:36:34,448 [258] [INFO] [data.model.quota] inserting namespace size for manifest 2 in namespace 3 gunicorn-registry stdout | 2025-09-26 08:36:34,448 [258] [DEBUG] [peewee] ('INSERT INTO "quotanamespacesize" ("namespace_user_id", "size_bytes", "backfill_start_ms", "backfill_complete") VALUES (%s, %s, %s, %s) RETURNING "quotanamespacesize"."id"', [3, 3797427, 0, True]) gunicorn-registry stdout | 2025-09-26 08:36:34,450 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotarepositorysize" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,450 [258] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."manifest_id" != %s)) LIMIT %s', [2, 2, 1]) gunicorn-registry stdout | 2025-09-26 08:36:34,451 [258] [INFO] [data.model.quota] inserting repository size for manifest 2 in repository 2 gunicorn-registry stdout | 2025-09-26 08:36:34,451 [258] [DEBUG] [peewee] ('INSERT INTO "quotarepositorysize" ("repository_id", "size_bytes", "backfill_start_ms", "backfill_complete") VALUES (%s, %s, %s, %s) RETURNING "quotarepositorysize"."id"', [2, 3797427, 0, True]) gunicorn-registry stdout | 2025-09-26 08:36:34,452 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [2, None, 1758879394451, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,453 [258] [DEBUG] [peewee] ('INSERT INTO "tag" ("name", "repository_id", "manifest_id", "lifetime_start_ms", "lifetime_end_ms", "immutable", "hidden", "reversion", "tag_kind_id") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "tag"."id"', ['$temp-7f777c6a-89dd-462a-b770-4547302b3651', 2, 2, 1758875794451, 1758879394451, False, True, False, 1]) gunicorn-registry stdout | 2025-09-26 08:36:34,455 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,456 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['c70b9ca4-ad69-46a9-b948-303fc64ae9fe']) gunicorn-registry stdout | 2025-09-26 08:36:34,457 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:34,458 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:34,458 [258] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61'} gunicorn-registry stdout | 2025-09-26 08:36:34,458 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,458 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,458 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,458 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,458 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,458 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,458 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,458 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:34,458 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:34,459 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:34,459 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:34,459 [258] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,459 [258] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,459 [258] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,459 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:34,459 [258] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,459 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,459 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,459 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,459 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:34,459 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083634Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:34,459 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083634Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 3cbbef42d36831fa21c2c58c42e1ae0c30369b14b13c235f1702be68dc4b4a91 gunicorn-registry stdout | 2025-09-26 08:36:34,459 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | ddf62453984fe077f3a118c1e3a2968d12787c4757a2d0fda8807c940f65f31e gunicorn-registry stdout | 2025-09-26 08:36:34,460 [258] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,460 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:34,460 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:34,519 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61 HTTP/1.1" 200 581 gunicorn-registry stdout | 2025-09-26 08:36:34,520 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8gt9-aeaye9-4bb', 'x-amz-id-2': 'mg0l8gt9-aeaye9-4bb', 'ETag': '"c953f11b655c667e87bf2e6d854fb992-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:34 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '581', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:34 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:34,520 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:36:34,520 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:34,520 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:34,520 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:34,520 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8gt9-aeaye9-4bb', 'HostId': 'mg0l8gt9-aeaye9-4bb', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8gt9-aeaye9-4bb', 'x-amz-id-2': 'mg0l8gt9-aeaye9-4bb', 'etag': '"c953f11b655c667e87bf2e6d854fb992-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:34 GMT', 'content-type': 'application/octet-stream', 'content-length': '581', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:36:34 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 34, tzinfo=tzutc()), 'ContentLength': 581, 'ETag': '"c953f11b655c667e87bf2e6d854fb992-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:36:34,522 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "mediatype" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:34,523 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."mutable" FROM "labelsourcetype" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:34,525 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,526 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['c096910f-960d-4309-abff-9efdd5ac8a4c', 'com.docker.official-images.bashbrew.arch', 'amd64', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:34,527 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [2, 2, 1]) gunicorn-registry stdout | 2025-09-26 08:36:34,530 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,531 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['47995e47-e934-48c1-abc6-8b1e26ced170', 'org.opencontainers.image.base.name', 'scratch', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:34,532 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [2, 2, 2]) gunicorn-registry stdout | 2025-09-26 08:36:34,534 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,535 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['0db1bdbe-803c-4b36-a321-1dc0acdabedb', 'org.opencontainers.image.created', '2025-05-30T16:20:41Z', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:34,536 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [2, 2, 3]) gunicorn-registry stdout | 2025-09-26 08:36:34,538 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,539 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['b4f566ac-22e7-499d-863a-75d9fb86ae52', 'org.opencontainers.image.revision', '5213c5a71c73d39d5896657909e753effb1c05ff', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:34,539 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [2, 2, 4]) gunicorn-registry stdout | 2025-09-26 08:36:34,542 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,543 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['a1ee67b5-5845-471f-99f2-7672f37a84b9', 'org.opencontainers.image.source', 'https://github.com/alpinelinux/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:x86_64', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:34,543 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [2, 2, 5]) gunicorn-registry stdout | 2025-09-26 08:36:34,545 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,546 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['3da0743a-d3cd-4099-a44d-9a837b5d2f76', 'org.opencontainers.image.url', 'https://hub.docker.com/_/alpine', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:34,547 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [2, 2, 6]) gunicorn-registry stdout | 2025-09-26 08:36:34,549 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,550 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['3d5f6dd8-644e-46cc-a9a7-5d7fa9b06808', 'org.opencontainers.image.version', '3.22.0', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:34,551 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [2, 2, 7]) gunicorn-registry stdout | 2025-09-26 08:36:34,553 [258] [DEBUG] [app] Ending request: urn:request:eb00a6c8-82da-4dcc-a360-2fd37c69c4f9 (/v2/testorg/alpine/manifests/sha256:08001109a7d679fe33b04fa51d681bd40b975d8f5cea8c3ef6c0eccb6a7338ce) {'endpoint': 'v2.write_manifest_by_digest', 'request_id': 'urn:request:eb00a6c8-82da-4dcc-a360-2fd37c69c4f9', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/manifests/sha256:08001109a7d679fe33b04fa51d681bd40b975d8f5cea8c3ef6c0eccb6a7338ce', 'path': '/v2/testorg/alpine/manifests/sha256:08001109a7d679fe33b04fa51d681bd40b975d8f5cea8c3ef6c0eccb6a7338ce', 'parameters': {}, 'json_body': {'schemaVersion': 2, 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'config': {'mediaType': 'application/vnd.oci.image.config.v1+json', 'digest': 'sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'size': 581}, 'layers': [{'mediaType': 'application/vnd.oci.image.layer.v1.tar+gzip', 'digest': 'sha256:fe07684b16b82247c3539ed86a65ff37a76138ec25d380bd80c869a1a4c73236', 'size': 3796846}], 'annotations': {'com.docker.official-images.bashbrew.arch': 'amd64', 'org.opencontainers.image.base.name': 'scratch', 'org.opencontainers.image.created': '2025-05-30T16:20:41Z', 'org.opencontainers.image.revision': '5213c5a71c73d39d5896657909e753effb1c05ff', 'org.opencontainers.image.source': 'https://github.com/alpinelinux/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:x86_64', 'org.opencontainers.image.url': 'https://hub.docker.com/_/alpine', 'org.opencontainers.image.version': '3.22.0'}}, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:34,554 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:34,554 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:34,554 [258] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:34 +0000] "PUT /v2/testorg/alpine/manifests/sha256:08001109a7d679fe33b04fa51d681bd40b975d8f5cea8c3ef6c0eccb6a7338ce HTTP/1.1" 201 2 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:34 +0000] "PUT /v2/testorg/alpine/manifests/sha256:08001109a7d679fe33b04fa51d681bd40b975d8f5cea8c3ef6c0eccb6a7338ce HTTP/1.1" 201 2 "-" "skopeo/1.14.5" (0.128 2842 0.128) manifestbackfillworker stdout | 2025-09-26 08:36:34,609 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} gunicorn-registry stdout | 2025-09-26 08:36:34,776 [251] [DEBUG] [app] Starting request: urn:request:629e6bc0-7bcd-4666-841b-796680555725 (/v2/testorg/alpine/blobs/sha256:5ff8d76a871d143e3d5bf83dd9a47bdd130b4f9c66d34531b064f0395b77ea6a) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:34,776 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:5ff8d76a871d143e3d5bf83dd9a47bdd130b4f9c66d34531b064f0395b77ea6a', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:34,776 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:34,776 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:34,777 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:34,777 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:34,777 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:34,777 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:34,777 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:34,778 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,779 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,780 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:34,780 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:5ff8d76a871d143e3d5bf83dd9a47bdd130b4f9c66d34531b064f0395b77ea6a_2 gunicorn-registry stdout | 2025-09-26 08:36:34,781 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:5ff8d76a871d143e3d5bf83dd9a47bdd130b4f9c66d34531b064f0395b77ea6a_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:34,781 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,783 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,783 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,785 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:5ff8d76a871d143e3d5bf83dd9a47bdd130b4f9c66d34531b064f0395b77ea6a', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,786 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:5ff8d76a871d143e3d5bf83dd9a47bdd130b4f9c66d34531b064f0395b77ea6a', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:34,786 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:5ff8d76a871d143e3d5bf83dd9a47bdd130b4f9c66d34531b064f0395b77ea6a_2: None gunicorn-registry stdout | 2025-09-26 08:36:34,786 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:5ff8d76a871d143e3d5bf83dd9a47bdd130b4f9c66d34531b064f0395b77ea6a_2: None gunicorn-registry stdout | 2025-09-26 08:36:34,787 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:34,787 [251] [DEBUG] [app] Ending request: urn:request:629e6bc0-7bcd-4666-841b-796680555725 (/v2/testorg/alpine/blobs/sha256:5ff8d76a871d143e3d5bf83dd9a47bdd130b4f9c66d34531b064f0395b77ea6a) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:629e6bc0-7bcd-4666-841b-796680555725', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:5ff8d76a871d143e3d5bf83dd9a47bdd130b4f9c66d34531b064f0395b77ea6a', 'path': '/v2/testorg/alpine/blobs/sha256:5ff8d76a871d143e3d5bf83dd9a47bdd130b4f9c66d34531b064f0395b77ea6a', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:34,787 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:34,787 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:34,787 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:34 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:5ff8d76a871d143e3d5bf83dd9a47bdd130b4f9c66d34531b064f0395b77ea6a HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:34 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:5ff8d76a871d143e3d5bf83dd9a47bdd130b4f9c66d34531b064f0395b77ea6a HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.012 1714 0.012) builder stdout | 2025-09-26 08:36:35,005 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} gunicorn-registry stdout | 2025-09-26 08:36:35,012 [251] [DEBUG] [app] Starting request: urn:request:bc604b42-ec08-45f1-aa88-e400371ea8c3 (/v2/testorg/alpine/blobs/sha256:0775bf52e81a3cf747ce4b00c80d91adc63a6a121d89b946e8b5a0c9ba509944) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:35,012 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:0775bf52e81a3cf747ce4b00c80d91adc63a6a121d89b946e8b5a0c9ba509944', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:35,012 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:35,012 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:35,013 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:35,013 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:35,013 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:35,013 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:35,013 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:35,014 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:35,016 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:35,017 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:35,017 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:0775bf52e81a3cf747ce4b00c80d91adc63a6a121d89b946e8b5a0c9ba509944_2 gunicorn-registry stdout | 2025-09-26 08:36:35,017 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:0775bf52e81a3cf747ce4b00c80d91adc63a6a121d89b946e8b5a0c9ba509944_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:35,018 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:35,019 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:35,019 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:35,021 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:0775bf52e81a3cf747ce4b00c80d91adc63a6a121d89b946e8b5a0c9ba509944', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:35,022 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:0775bf52e81a3cf747ce4b00c80d91adc63a6a121d89b946e8b5a0c9ba509944', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:35,023 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:0775bf52e81a3cf747ce4b00c80d91adc63a6a121d89b946e8b5a0c9ba509944_2: None gunicorn-registry stdout | 2025-09-26 08:36:35,023 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:0775bf52e81a3cf747ce4b00c80d91adc63a6a121d89b946e8b5a0c9ba509944_2: None gunicorn-registry stdout | 2025-09-26 08:36:35,023 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:35,023 [251] [DEBUG] [app] Ending request: urn:request:bc604b42-ec08-45f1-aa88-e400371ea8c3 (/v2/testorg/alpine/blobs/sha256:0775bf52e81a3cf747ce4b00c80d91adc63a6a121d89b946e8b5a0c9ba509944) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:bc604b42-ec08-45f1-aa88-e400371ea8c3', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:0775bf52e81a3cf747ce4b00c80d91adc63a6a121d89b946e8b5a0c9ba509944', 'path': '/v2/testorg/alpine/blobs/sha256:0775bf52e81a3cf747ce4b00c80d91adc63a6a121d89b946e8b5a0c9ba509944', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:35,023 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:35,023 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:35,024 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:35 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:0775bf52e81a3cf747ce4b00c80d91adc63a6a121d89b946e8b5a0c9ba509944 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:35 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:0775bf52e81a3cf747ce4b00c80d91adc63a6a121d89b946e8b5a0c9ba509944 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.012 1714 0.012) gunicorn-registry stdout | 2025-09-26 08:36:35,369 [251] [DEBUG] [app] Starting request: urn:request:f5b5dfd5-8cd5-40e8-9fbe-f7ad56b0c551 (/v2/testorg/alpine/blobs/uploads/fac2c0fb-038a-4a59-ada1-e4d60b9063d6) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:35,369 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'fac2c0fb-038a-4a59-ada1-e4d60b9063d6', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:35,369 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:35,369 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:35,370 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:35,370 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:35,370 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:35,370 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:35,370 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:35,371 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:35,372 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:35,373 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:35,374 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:35,375 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:35,376 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:35,378 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:35,379 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:35,380 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['fac2c0fb-038a-4a59-ada1-e4d60b9063d6', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:35,380 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:35,381 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:35,381 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:35,382 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:35,382 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:35,382 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,382 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,382 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,382 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,382 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:35,382 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,382 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,382 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:35,382 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:35,382 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:35,382 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:35,382 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:35,383 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,383 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,383 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,383 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:35,383 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:35,383 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:35,383 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,383 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,383 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:35,383 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083635Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:35,384 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083635Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 298d852da3713cbbcd632b19825efe064b760bfac9377f9f98bd7e65d86f48b7 gunicorn-registry stdout | 2025-09-26 08:36:35,384 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 60034319ba76739f971aa8c9653349af5fac7d37e665e38cf7224b9fa0cf2897 gunicorn-registry stdout | 2025-09-26 08:36:35,384 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,384 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:35,384 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:35,391 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:35,391 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8hix-95bhgj-6hi', 'x-amz-id-2': 'mg0l8hix-95bhgj-6hi', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:35 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:35,391 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af68d65093d73ec60008f93358' gunicorn-registry stdout | 2025-09-26 08:36:35,391 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,391 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:35,391 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:35,391 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8hix-95bhgj-6hi', 'HostId': 'mg0l8hix-95bhgj-6hi', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8hix-95bhgj-6hi', 'x-amz-id-2': 'mg0l8hix-95bhgj-6hi', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:35 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af', 'UploadId': '68d65093d73ec60008f93358'} gunicorn-registry stdout | 2025-09-26 08:36:35,391 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:35,442 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:36:35,442 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:36:35,442 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af', 'UploadId': '68d65093d73ec60008f93358', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89a7330>, 'ContentLength': 80956} gunicorn-registry stdout | 2025-09-26 08:36:35,442 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,442 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,442 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,442 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,442 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:35,442 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,443 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,443 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:35,443 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:35,443 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:35,443 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:35,443 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:35,443 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,443 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,443 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:36:35,443 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,443 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,443 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af', 'query_string': {'uploadId': '68d65093d73ec60008f93358', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '80956', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'uoNR0zUaKSCtAbCPGfG85g==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b89a7330>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af?uploadId=68d65093d73ec60008f93358&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af', 'UploadId': '68d65093d73ec60008f93358', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89a7330>, 'ContentLength': 80956}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:35,443 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:35,443 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:35,443 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,444 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,444 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:35,444 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af gunicorn-registry stdout | partNumber=1&uploadId=68d65093d73ec60008f93358 gunicorn-registry stdout | content-length:80956 gunicorn-registry stdout | content-md5:uoNR0zUaKSCtAbCPGfG85g== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083635Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:35,444 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083635Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 1f54d3d22925a61c571d25770d2cea6602bb9fdd197524b8453572114470cd40 gunicorn-registry stdout | 2025-09-26 08:36:35,444 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 39044e4558977797d571f55c02e8aca8f6285bb73af3b0ea31fe5347c475dbdd gunicorn-registry stdout | 2025-09-26 08:36:35,444 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,444 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:35,444 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:35,445 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:35,446 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:36:35,526 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af?uploadId=68d65093d73ec60008f93358&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:35,526 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8hkl-a4vsmd-cx0', 'x-amz-id-2': 'mg0l8hkl-a4vsmd-cx0', 'ETag': '"ba8351d3351a2920ad01b08f19f1bce6"', 'Date': 'Fri, 26 Sep 2025 08:36:35 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:36:35,526 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:35,526 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,526 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:35,526 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:35,526 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8hkl-a4vsmd-cx0', 'HostId': 'mg0l8hkl-a4vsmd-cx0', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8hkl-a4vsmd-cx0', 'x-amz-id-2': 'mg0l8hkl-a4vsmd-cx0', 'etag': '"ba8351d3351a2920ad01b08f19f1bce6"', 'date': 'Fri, 26 Sep 2025 08:36:35 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"ba8351d3351a2920ad01b08f19f1bce6"'} gunicorn-registry stdout | 2025-09-26 08:36:35,527 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af', 'UploadId': '68d65093d73ec60008f93358', 'MultipartUpload': {'Parts': [{'ETag': '"ba8351d3351a2920ad01b08f19f1bce6"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:36:35,527 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,527 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,527 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,527 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:35,527 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,527 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,527 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:35,527 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:35,527 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:35,527 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:35,527 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:35,527 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,527 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,527 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,528 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af', 'query_string': {'uploadId': '68d65093d73ec60008f93358'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"ba8351d3351a2920ad01b08f19f1bce6"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af?uploadId=68d65093d73ec60008f93358', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af', 'UploadId': '68d65093d73ec60008f93358', 'MultipartUpload': {'Parts': [{'ETag': '"ba8351d3351a2920ad01b08f19f1bce6"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:35,528 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:35,528 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:35,528 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,528 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,528 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:35,528 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af gunicorn-registry stdout | uploadId=68d65093d73ec60008f93358 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:c0d0628dcb076e58f4e437fc985fae9c4c9425f5ddb42cb9aa3828e164b9adc5 gunicorn-registry stdout | x-amz-date:20250926T083635Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | c0d0628dcb076e58f4e437fc985fae9c4c9425f5ddb42cb9aa3828e164b9adc5 gunicorn-registry stdout | 2025-09-26 08:36:35,528 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083635Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 56ed96784d966d046a1071e52d368d0911cbc6334573698e5e4466c4cf5c0e97 gunicorn-registry stdout | 2025-09-26 08:36:35,528 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 9e3481598281d21bd52e786a3b93fd1ef66114d4c29101979d41f2df29bc3354 gunicorn-registry stdout | 2025-09-26 08:36:35,528 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,528 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:35,528 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:35,543 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af?uploadId=68d65093d73ec60008f93358 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:36:35,543 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8hmx-bj0dtf-ra7', 'x-amz-id-2': 'mg0l8hmx-bj0dtf-ra7', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:36:35 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:35,543 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af"cfca356d6af89691a600aef06e451bc6-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af?uploadId=68d65093d73ec60008f93358' gunicorn-registry stdout | 2025-09-26 08:36:35,544 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,544 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:35,544 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:35,544 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:35,544 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8hmx-bj0dtf-ra7', 'HostId': 'mg0l8hmx-bj0dtf-ra7', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8hmx-bj0dtf-ra7', 'x-amz-id-2': 'mg0l8hmx-bj0dtf-ra7', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:36:35 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af?uploadId=68d65093d73ec60008f93358', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dba100c1-5bc9-4b91-9343-4a08879189af', 'ETag': '"cfca356d6af89691a600aef06e451bc6-1"'} gunicorn-registry stdout | 2025-09-26 08:36:35,544 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:35,545 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:35,545 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 80956 bytes to blob fac2c0fb-038a-4a59-ada1-e4d60b9063d6 took 0.16415977478027344 seconds gunicorn-registry stdout | 2025-09-26 08:36:35,545 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['fac2c0fb-038a-4a59-ada1-e4d60b9063d6', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:35,546 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'fac2c0fb-038a-4a59-ada1-e4d60b9063d6', 80956, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwNTNmYzZhNGY4ZWM5NmRkMTM1OCIsInJlbGF0aW9uc2hpcFR5cGUiOiJHRU5FUkFURURfRlJPTSJ9XX19YjIyMTwAAAAAAAAAAOAJAAAAAABiKS9b3/DM6nL5+77/z5ele6Fs0PISquGRA2TXr71rs5RiLg==', 9, '{"chunks": [["uploads/dba100c1-5bc9-4b91-9343-4a08879189af", 0, 80956]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 36, 35, 323132), None, None, 11]) gunicorn-registry stdout | 2025-09-26 08:36:35,548 [251] [DEBUG] [app] Ending request: urn:request:f5b5dfd5-8cd5-40e8-9fbe-f7ad56b0c551 (/v2/testorg/alpine/blobs/uploads/fac2c0fb-038a-4a59-ada1-e4d60b9063d6) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:f5b5dfd5-8cd5-40e8-9fbe-f7ad56b0c551', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/fac2c0fb-038a-4a59-ada1-e4d60b9063d6', 'path': '/v2/testorg/alpine/blobs/uploads/fac2c0fb-038a-4a59-ada1-e4d60b9063d6', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:35,549 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:35,549 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:35,549 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:35 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/fac2c0fb-038a-4a59-ada1-e4d60b9063d6 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:35 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/fac2c0fb-038a-4a59-ada1-e4d60b9063d6 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.182 82730 0.181) logrotateworker stdout | 2025-09-26 08:36:36,314 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gcworker stdout | 2025-09-26 08:36:37,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:36:37,085 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:57.083344+00:00 (in 19.997587 seconds) gcworker stdout | 2025-09-26 08:36:37,085 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:07 GMT)" (scheduled at 2025-09-26 08:36:37.085344+00:00) gcworker stdout | 2025-09-26 08:36:37,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gcworker stdout | 2025-09-26 08:36:37,092 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875497091, None, 1, 0]) gcworker stdout | 2025-09-26 08:36:37,093 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:36:37,093 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:07 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:36:37,305 [251] [DEBUG] [app] Starting request: urn:request:b06fb252-eec9-4fe4-bddc-e29f22f7b086 (/v2/testorg/alpine/blobs/uploads/0d2cf060-c9da-4d57-8c02-b19b169b45e9) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:37,306 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '0d2cf060-c9da-4d57-8c02-b19b169b45e9', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:37,306 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:37,306 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:37,307 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:37,307 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:37,307 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:37,307 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:37,307 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:37,308 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:37,309 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:37,310 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:37,311 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:37,312 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:37,313 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:37,314 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:37,315 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:37,316 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['0d2cf060-c9da-4d57-8c02-b19b169b45e9', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:37,317 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:37,317 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:37,317 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:37,318 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:37,319 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:37,319 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,319 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,319 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,319 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,319 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,319 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,319 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,319 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,319 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:37,319 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:37,319 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:37,319 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:37,319 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,319 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,319 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,319 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:37,320 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,320 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,320 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,320 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,320 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:37,320 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083637Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:37,320 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083637Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 5e27453fb3b644522fadc0465753fd287bb966f39b13b2803374c7d153666c33 gunicorn-registry stdout | 2025-09-26 08:36:37,320 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 000885f873e1ae127524cb3815e3ff36bb4518509adb9be23262e2e67ffc4120 gunicorn-registry stdout | 2025-09-26 08:36:37,320 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,320 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:37,320 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:37,328 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:37,328 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8j0q-83hvv2-1348', 'x-amz-id-2': 'mg0l8j0q-83hvv2-1348', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:37 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:37,328 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e68d65095d73ec60008f9336d' gunicorn-registry stdout | 2025-09-26 08:36:37,328 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,328 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:37,328 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,328 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8j0q-83hvv2-1348', 'HostId': 'mg0l8j0q-83hvv2-1348', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8j0q-83hvv2-1348', 'x-amz-id-2': 'mg0l8j0q-83hvv2-1348', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:37 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e', 'UploadId': '68d65095d73ec60008f9336d'} gunicorn-registry stdout | 2025-09-26 08:36:37,328 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:37,616 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:36:37,616 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:36:37,616 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e', 'UploadId': '68d65095d73ec60008f9336d', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89a71a0>, 'ContentLength': 3500929} gunicorn-registry stdout | 2025-09-26 08:36:37,616 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,616 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,616 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,616 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,617 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,617 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,617 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,617 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,617 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:37,617 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:37,617 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:37,617 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:37,617 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,625 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,625 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:36:37,625 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,625 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,625 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e', 'query_string': {'uploadId': '68d65095d73ec60008f9336d', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '3500929', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'sLGGrIu3i2lA9V93R9UJSw==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b89a71a0>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e?uploadId=68d65095d73ec60008f9336d&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e', 'UploadId': '68d65095d73ec60008f9336d', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89a71a0>, 'ContentLength': 3500929}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:37,625 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,625 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,625 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,625 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,625 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:37,625 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e gunicorn-registry stdout | partNumber=1&uploadId=68d65095d73ec60008f9336d gunicorn-registry stdout | content-length:3500929 gunicorn-registry stdout | content-md5:sLGGrIu3i2lA9V93R9UJSw== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083637Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:37,625 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083637Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 7b40f56cb58ef3d05b7ae3655c9881a11509f7b09f7d8ef7cab11205576fd6c2 gunicorn-registry stdout | 2025-09-26 08:36:37,625 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 3733ae026745956edda310e3949986ee30d2c8bc25db6e9878cdd6b46d5e8dcc gunicorn-registry stdout | 2025-09-26 08:36:37,625 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,626 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:37,626 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:37,626 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:37,628 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. securityworker stdout | 2025-09-26 08:36:37,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:36:37,683 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:41.684816+00:00 (in 4.000849 seconds) securityworker stdout | 2025-09-26 08:36:37,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:07 GMT)" (scheduled at 2025-09-26 08:36:37.683505+00:00) securityworker stdout | 2025-09-26 08:36:37,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:36:37,684 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:36:37,689 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:36:37,690 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:36:37,696 [86] [DEBUG] [peewee] ('SELECT Min("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:36:37,697 [86] [DEBUG] [util.migrate.allocator] Total range: 1-4 securityworker stdout | 2025-09-26 08:36:37,697 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:36:37,697 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-4 securityworker stdout | 2025-09-26 08:36:37,697 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:36:37 [86] [DEBUG] [util.migrate.allocator] Total range: 1-4 securityworker stderr | 2025-09-26 08:36:37 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:36:37 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-4 securityworker stderr | 2025-09-26 08:36:37 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:36:37,697 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 4]) securityworker stderr | 2025-09-26 08:36:37 [86] [DEBUG] [util.migrate.allocator] Found 3 candidates, processing block start: 1 end: 4 by worker securityworker stdout | 2025-09-26 08:36:37,699 [86] [DEBUG] [util.migrate.allocator] Found 3 candidates, processing block start: 1 end: 4 by worker securityworker stdout | 2025-09-26 08:36:37,700 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "mediatype" AS "t1"', []) securityworker stdout | 2025-09-26 08:36:37,701 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) securityworker stdout | 2025-09-26 08:36:37,703 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 1, 0]) securityworker stdout | 2025-09-26 08:36:37,705 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['86c9f0ff-30c6-4d94-bde8-375b2a721ed8']) securityworker stdout | 2025-09-26 08:36:37,706 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "imagestoragelocation" AS "t1"', []) securityworker stdout | 2025-09-26 08:36:37,708 [86] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/endpoints.json securityworker stdout | 2025-09-26 08:36:37,725 [86] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/sdk-default-configuration.json securityworker stdout | 2025-09-26 08:36:37,725 [86] [DEBUG] [botocore.hooks] Event choose-service-name: calling handler securityworker stdout | 2025-09-26 08:36:37,736 [86] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/s3/2006-03-01/service-2.json securityworker stdout | 2025-09-26 08:36:37,755 [86] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/s3/2006-03-01/endpoint-rule-set-1.json securityworker stdout | 2025-09-26 08:36:37,758 [86] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/partitions.json securityworker stdout | 2025-09-26 08:36:37,759 [86] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler securityworker stdout | 2025-09-26 08:36:37,759 [86] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler ._handler at 0x7f2ab65d2520> notificationworker stdout | 2025-09-26 08:36:37,772 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:36:37,772 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:40.692901+00:00 (in 2.920566 seconds) notificationworker stdout | 2025-09-26 08:36:37,772 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:37 GMT)" (scheduled at 2025-09-26 08:36:37.771811+00:00) notificationworker stdout | 2025-09-26 08:36:37,772 [68] [DEBUG] [workers.queueworker] Running watchdog. notificationworker stdout | 2025-09-26 08:36:37,772 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:37 GMT)" executed successfully securityworker stdout | 2025-09-26 08:36:37,802 [86] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler securityworker stdout | 2025-09-26 08:36:37,804 [86] [DEBUG] [botocore.endpoint] Setting s3 timeout as (60, 60) securityworker stdout | 2025-09-26 08:36:37,807 [86] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/_retry.json securityworker stdout | 2025-09-26 08:36:37,807 [86] [DEBUG] [botocore.client] Registering retry handlers for service: s3 securityworker stdout | 2025-09-26 08:36:37,807 [86] [DEBUG] [botocore.utils] Registering S3 region redirector handler securityworker stdout | 2025-09-26 08:36:37,817 [86] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/boto3/data/s3/2006-03-01/resources-1.json securityworker stdout | 2025-09-26 08:36:37,819 [86] [DEBUG] [botocore.hooks] Event choose-service-name: calling handler securityworker stdout | 2025-09-26 08:36:37,820 [86] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler securityworker stdout | 2025-09-26 08:36:37,820 [86] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler ._handler at 0x7f2ab65d2520> securityworker stdout | 2025-09-26 08:36:37,820 [86] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler securityworker stdout | 2025-09-26 08:36:37,821 [86] [DEBUG] [botocore.endpoint] Setting s3 timeout as (60, 60) securityworker stdout | 2025-09-26 08:36:37,822 [86] [DEBUG] [botocore.client] Registering retry handlers for service: s3 securityworker stdout | 2025-09-26 08:36:37,823 [86] [DEBUG] [botocore.utils] Registering S3 region redirector handler securityworker stdout | 2025-09-26 08:36:37,823 [86] [DEBUG] [boto3.resources.factory] Loading s3:s3 securityworker stdout | 2025-09-26 08:36:37,824 [86] [DEBUG] [boto3.resources.factory] Loading s3:Bucket securityworker stdout | 2025-09-26 08:36:37,824 [86] [DEBUG] [boto3.resources.model] Renaming Bucket attribute name securityworker stdout | 2025-09-26 08:36:37,824 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Bucket: calling handler ._handler at 0x7f2ab65d3f60> securityworker stdout | 2025-09-26 08:36:37,825 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler securityworker stdout | 2025-09-26 08:36:37,825 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler securityworker stdout | 2025-09-26 08:36:37,825 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler > securityworker stdout | 2025-09-26 08:36:37,825 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler securityworker stdout | 2025-09-26 08:36:37,825 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:37,825 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:37,825 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:37,826 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:37,826 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:37,826 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:37,826 [86] [DEBUG] [botocore.hooks] Event before-call.s3.HeadBucket: calling handler securityworker stdout | 2025-09-26 08:36:37,826 [86] [DEBUG] [botocore.hooks] Event before-call.s3.HeadBucket: calling handler securityworker stdout | 2025-09-26 08:36:37,826 [86] [DEBUG] [botocore.hooks] Event before-call.s3.HeadBucket: calling handler securityworker stdout | 2025-09-26 08:36:37,826 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadBucket) with params: {'url_path': '', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:36:37,827 [86] [DEBUG] [botocore.hooks] Event request-created.s3.HeadBucket: calling handler > securityworker stdout | 2025-09-26 08:36:37,827 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadBucket: calling handler > securityworker stdout | 2025-09-26 08:36:37,827 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadBucket: calling handler securityworker stdout | 2025-09-26 08:36:37,827 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadBucket: calling handler securityworker stdout | 2025-09-26 08:36:37,827 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:36:37,827 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | HEAD securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083637Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:36:37,827 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083637Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | fd0a1db65d3c6e3f1e6dd6d2783ac3ed0b004fdcea57b758ca36a900d684a137 securityworker stdout | 2025-09-26 08:36:37,827 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | 40d87693327ad9b8683db417020be0667f0e421816c1479097b204633ab5db83 securityworker stdout | 2025-09-26 08:36:37,827 [86] [DEBUG] [botocore.hooks] Event request-created.s3.HeadBucket: calling handler securityworker stdout | 2025-09-26 08:36:37,827 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:36:37,828 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:36:37,828 [86] [DEBUG] [urllib3.connectionpool] Starting new HTTPS connection (1): s3.openshift-storage.svc.cluster.local:443 gunicorn-registry stdout | 2025-09-26 08:36:37,835 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e?uploadId=68d65095d73ec60008f9336d&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:37,835 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8j97-d56fss-vfl', 'x-amz-id-2': 'mg0l8j97-d56fss-vfl', 'ETag': '"b0b186ac8bb78b6940f55f7747d5094b"', 'Date': 'Fri, 26 Sep 2025 08:36:37 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:36:37,835 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:37,836 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,836 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:37,836 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,836 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8j97-d56fss-vfl', 'HostId': 'mg0l8j97-d56fss-vfl', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8j97-d56fss-vfl', 'x-amz-id-2': 'mg0l8j97-d56fss-vfl', 'etag': '"b0b186ac8bb78b6940f55f7747d5094b"', 'date': 'Fri, 26 Sep 2025 08:36:37 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"b0b186ac8bb78b6940f55f7747d5094b"'} gunicorn-registry stdout | 2025-09-26 08:36:37,836 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e', 'UploadId': '68d65095d73ec60008f9336d', 'MultipartUpload': {'Parts': [{'ETag': '"b0b186ac8bb78b6940f55f7747d5094b"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:36:37,836 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,836 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,836 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,836 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,836 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,836 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,836 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,836 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:37,836 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:37,837 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:37,837 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:37,837 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,837 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,837 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,837 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e', 'query_string': {'uploadId': '68d65095d73ec60008f9336d'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"b0b186ac8bb78b6940f55f7747d5094b"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e?uploadId=68d65095d73ec60008f9336d', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e', 'UploadId': '68d65095d73ec60008f9336d', 'MultipartUpload': {'Parts': [{'ETag': '"b0b186ac8bb78b6940f55f7747d5094b"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:37,837 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,837 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,837 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,837 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,837 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:37,837 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e gunicorn-registry stdout | uploadId=68d65095d73ec60008f9336d gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:c18aa6fc9ee3ba3cc5d029ed1c4115f0a9771b94fcd9a89c068e747d7d68cf18 gunicorn-registry stdout | x-amz-date:20250926T083637Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | c18aa6fc9ee3ba3cc5d029ed1c4115f0a9771b94fcd9a89c068e747d7d68cf18 gunicorn-registry stdout | 2025-09-26 08:36:37,838 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083637Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 0aafca7bf4ef3a7dba539e0b23baaf15ed4447cd4dc0bddeae40811e2f95ee65 gunicorn-registry stdout | 2025-09-26 08:36:37,838 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 77a0a60c0a7e7a458e05727d0aa09d8654997945bd9eefc4ecf48266c0a5f03b gunicorn-registry stdout | 2025-09-26 08:36:37,838 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,838 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:37,838 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:37,855 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e?uploadId=68d65095d73ec60008f9336d HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:36:37,855 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jf3-46iob-my7', 'x-amz-id-2': 'mg0l8jf3-46iob-my7', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:36:37 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:37,855 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e"15c25308dfd7d923db6b0c81593d4b12-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e?uploadId=68d65095d73ec60008f9336d' gunicorn-registry stdout | 2025-09-26 08:36:37,855 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,855 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,855 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:37,855 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,855 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8jf3-46iob-my7', 'HostId': 'mg0l8jf3-46iob-my7', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jf3-46iob-my7', 'x-amz-id-2': 'mg0l8jf3-46iob-my7', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:36:37 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e?uploadId=68d65095d73ec60008f9336d', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e', 'ETag': '"15c25308dfd7d923db6b0c81593d4b12-1"'} gunicorn-registry stdout | 2025-09-26 08:36:37,855 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:37,856 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:37,856 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 3500929 bytes to blob 0d2cf060-c9da-4d57-8c02-b19b169b45e9 took 0.5390660762786865 seconds gunicorn-registry stdout | 2025-09-26 08:36:37,857 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['0d2cf060-c9da-4d57-8c02-b19b169b45e9', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:37,859 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, '0d2cf060-c9da-4d57-8c02-b19b169b45e9', 3500929, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAIn2Nk0r8T/hn88C3qaO8/Eniu+/cvzfrlVHKvFHEi986/E/dh7+KF2e/1RSSSWV9Lb0PwEAAP//N8PNGwBcbQEAAAAAAAAAAFyrAQAAAAAOU3Su0aedAfWHSdbGItM2AhMuf1PaBNKSCi/+Zy6zqZRiLg==', 9, '{"chunks": [["uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e", 0, 3500929]]}', 1, 7166976, datetime.datetime(2025, 9, 26, 8, 36, 37, 257742), None, None, 13]) securityworker stdout | 2025-09-26 08:36:37,859 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 HTTP/1.1" 200 0 securityworker stdout | 2025-09-26 08:36:37,859 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jfg-bzgwf-o7s', 'x-amz-id-2': 'mg0l8jfg-bzgwf-o7s', 'Date': 'Fri, 26 Sep 2025 08:36:37 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:36:37,859 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | b'' securityworker stdout | 2025-09-26 08:36:37,860 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadBucket: calling handler securityworker stdout | 2025-09-26 08:36:37,860 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:36:37,860 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadBucket: calling handler > securityworker stdout | 2025-09-26 08:36:37,860 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:37,861 [251] [DEBUG] [app] Ending request: urn:request:b06fb252-eec9-4fe4-bddc-e29f22f7b086 (/v2/testorg/alpine/blobs/uploads/0d2cf060-c9da-4d57-8c02-b19b169b45e9) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:b06fb252-eec9-4fe4-bddc-e29f22f7b086', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/0d2cf060-c9da-4d57-8c02-b19b169b45e9', 'path': '/v2/testorg/alpine/blobs/uploads/0d2cf060-c9da-4d57-8c02-b19b169b45e9', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} securityworker stdout | 2025-09-26 08:36:37,861 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:36:37,862 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc'} gunicorn-registry stdout | 2025-09-26 08:36:37,862 [251] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:36:37,862 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:37,862 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:37,862 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:37,862 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:37,862 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,862 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:37,863 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:37 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/0d2cf060-c9da-4d57-8c02-b19b169b45e9 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" securityworker stdout | 2025-09-26 08:36:37,862 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:37,862 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:37,863 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:37,863 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:37,863 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:37,863 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:37,863 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:37 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/0d2cf060-c9da-4d57-8c02-b19b169b45e9 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.559 3502705 0.558) securityworker stdout | 2025-09-26 08:36:37,863 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:37,863 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:37,863 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:36:37,864 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:37,864 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:37,864 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:37,864 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:37,864 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:36:37,864 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083637Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:36:37,864 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083637Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | 1bd8b0798f6db94383a70e29e81d29ea08a4cb13059616b956238de4a1374648 securityworker stdout | 2025-09-26 08:36:37,864 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | f5e1d7477fb768d8985cb579b729f9ae55280cfc4bbe7f87c8ad14acabf23fd4 securityworker stdout | 2025-09-26 08:36:37,864 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:37,865 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:36:37,865 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:36:37,865 [86] [DEBUG] [urllib3.connectionpool] Starting new HTTPS connection (1): s3.openshift-storage.svc.cluster.local:443 securityworker stdout | 2025-09-26 08:36:37,902 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc HTTP/1.1" 200 7698 securityworker stdout | 2025-09-26 08:36:37,902 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jgg-x7v0o-k8y', 'x-amz-id-2': 'mg0l8jgg-x7v0o-k8y', 'ETag': '"7d1bc3fb37637dd0a81dabcf72e9bbfc-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:30 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '7698', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:37 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:36:37,902 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:36:37,903 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:37,903 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:36:37,903 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:37,903 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8jgg-x7v0o-k8y', 'HostId': 'mg0l8jgg-x7v0o-k8y', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jgg-x7v0o-k8y', 'x-amz-id-2': 'mg0l8jgg-x7v0o-k8y', 'etag': '"7d1bc3fb37637dd0a81dabcf72e9bbfc-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:30 GMT', 'content-type': 'application/octet-stream', 'content-length': '7698', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:36:37 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 30, tzinfo=tzutc()), 'ContentLength': 7698, 'ETag': '"7d1bc3fb37637dd0a81dabcf72e9bbfc-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:36:37,904 [251] [DEBUG] [app] Starting request: urn:request:5084a65b-6e63-4f3f-b64d-bdb07ea882d6 (/v2/testorg/alpine/blobs/uploads/0d2cf060-c9da-4d57-8c02-b19b169b45e9) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:37,904 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '0d2cf060-c9da-4d57-8c02-b19b169b45e9', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:37,904 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:37,905 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw securityworker stdout | 2025-09-26 08:36:37,905 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:37,907 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:37,907 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:37,907 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:37,907 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:37,907 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine securityworker stdout | 2025-09-26 08:36:37,907 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:37,908 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) securityworker stdout | 2025-09-26 08:36:37,909 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "imagestoragelocation" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['local_us', 1, 0]) securityworker stdout | 2025-09-26 08:36:37,909 [86] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4', 32, True, True, 'sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4']) gunicorn-registry stdout | 2025-09-26 08:36:37,910 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:37,911 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) securityworker stdout | 2025-09-26 08:36:37,911 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:36:37,912 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:36:37,912 [86] [DEBUG] [boto3.resources.action] Calling s3:put_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4', 'Body': b'\x1f\x8b\x08\x00\x00\tn\x88\x00\xffb\x18\x05\xa3`\x14\x8cX\x00\x08\x00\x00\xff\xff.\xaf\xb5\xef\x00\x04\x00\x00'} gunicorn-registry stdout | 2025-09-26 08:36:37,913 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) securityworker stdout | 2025-09-26 08:36:37,913 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.PutObject: calling handler securityworker stdout | 2025-09-26 08:36:37,913 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.PutObject: calling handler securityworker stdout | 2025-09-26 08:36:37,913 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.PutObject: calling handler securityworker stdout | 2025-09-26 08:36:37,913 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.PutObject: calling handler securityworker stdout | 2025-09-26 08:36:37,913 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.PutObject: calling handler securityworker stdout | 2025-09-26 08:36:37,913 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.PutObject: calling handler > securityworker stdout | 2025-09-26 08:36:37,913 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.PutObject: calling handler securityworker stdout | 2025-09-26 08:36:37,913 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:37,913 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:37,913 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:37,913 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:37,913 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:37,913 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:37,914 [86] [DEBUG] [botocore.hooks] Event before-call.s3.PutObject: calling handler securityworker stdout | 2025-09-26 08:36:37,914 [86] [DEBUG] [botocore.hooks] Event before-call.s3.PutObject: calling handler securityworker stdout | 2025-09-26 08:36:37,914 [86] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. securityworker stdout | 2025-09-26 08:36:37,914 [86] [DEBUG] [botocore.hooks] Event before-call.s3.PutObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,914 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) securityworker stdout | 2025-09-26 08:36:37,914 [86] [DEBUG] [botocore.hooks] Event before-call.s3.PutObject: calling handler securityworker stdout | 2025-09-26 08:36:37,914 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=PutObject) with params: {'url_path': '/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4', 'query_string': {}, 'method': 'PUT', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'VKAQCfF7237B3Ry0JyRDBA==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7f2aad169670>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4', 'Body': <_io.BytesIO object at 0x7f2aad169670>}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:36:37,914 [86] [DEBUG] [botocore.hooks] Event request-created.s3.PutObject: calling handler > securityworker stdout | 2025-09-26 08:36:37,914 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.PutObject: calling handler > securityworker stdout | 2025-09-26 08:36:37,915 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.PutObject: calling handler securityworker stdout | 2025-09-26 08:36:37,915 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.PutObject: calling handler securityworker stdout | 2025-09-26 08:36:37,915 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:36:37,915 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | PUT securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | content-md5:VKAQCfF7237B3Ry0JyRDBA== securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD securityworker stdout | x-amz-date:20250926T083637Z securityworker stdout | content-md5;host;x-amz-content-sha256;x-amz-date securityworker stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:37,915 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:36:37,915 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083637Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | 864948a7ff2aced114514ea975ca0eacea7f6b2b34417a38753577f3b4db7474 securityworker stdout | 2025-09-26 08:36:37,915 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | 82f328f8ce79153d5ef0ee068c09e99336e3a6ff7ea5347a83f32f7da60b4681 securityworker stdout | 2025-09-26 08:36:37,915 [86] [DEBUG] [botocore.hooks] Event request-created.s3.PutObject: calling handler securityworker stdout | 2025-09-26 08:36:37,915 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:36:37,916 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:37,916 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) securityworker stdout | 2025-09-26 08:36:37,916 [86] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:37,917 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) securityworker stdout | 2025-09-26 08:36:37,917 [86] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:36:37,919 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['0d2cf060-c9da-4d57-8c02-b19b169b45e9', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:37,920 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:37,920 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:37,920 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:37,921 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:37,921 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/db7b6b63-4d41-43d0-987a-5bbf25fba6ff', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:37,921 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,921 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,921 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,921 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,921 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,921 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,921 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,921 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,921 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:37,921 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:37,921 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:37,921 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:37,922 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,922 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,922 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,922 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/db7b6b63-4d41-43d0-987a-5bbf25fba6ff?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/db7b6b63-4d41-43d0-987a-5bbf25fba6ff', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/db7b6b63-4d41-43d0-987a-5bbf25fba6ff?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/db7b6b63-4d41-43d0-987a-5bbf25fba6ff', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:37,922 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,922 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,922 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,922 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,922 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:37,922 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/db7b6b63-4d41-43d0-987a-5bbf25fba6ff gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083637Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:37,922 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083637Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | ee0766d6e60c794ed478be27d0914b01a815db2bc46704e9985072501bddf420 gunicorn-registry stdout | 2025-09-26 08:36:37,923 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 8e10a64d223cae1d45e69be8ace2fdfb05f7acc6f95944a16bc3c6d02e071846 gunicorn-registry stdout | 2025-09-26 08:36:37,923 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,924 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:37,924 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:37,933 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/db7b6b63-4d41-43d0-987a-5bbf25fba6ff?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:37,933 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jhl-1lan5z-ngl', 'x-amz-id-2': 'mg0l8jhl-1lan5z-ngl', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:37 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:37,933 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/db7b6b63-4d41-43d0-987a-5bbf25fba6ff68d65095d73ec60008f93375' gunicorn-registry stdout | 2025-09-26 08:36:37,933 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,934 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:37,934 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,934 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8jhl-1lan5z-ngl', 'HostId': 'mg0l8jhl-1lan5z-ngl', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jhl-1lan5z-ngl', 'x-amz-id-2': 'mg0l8jhl-1lan5z-ngl', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:37 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/db7b6b63-4d41-43d0-987a-5bbf25fba6ff', 'UploadId': '68d65095d73ec60008f93375'} gunicorn-registry stdout | 2025-09-26 08:36:37,934 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:37,934 [251] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/db7b6b63-4d41-43d0-987a-5bbf25fba6ff', 'UploadId': '68d65095d73ec60008f93375'} gunicorn-registry stdout | 2025-09-26 08:36:37,934 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,935 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,935 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,935 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,935 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,935 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,935 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:37,935 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:37,935 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:37,935 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:37,936 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,936 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,936 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,936 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/db7b6b63-4d41-43d0-987a-5bbf25fba6ff', 'query_string': {'uploadId': '68d65095d73ec60008f93375'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/db7b6b63-4d41-43d0-987a-5bbf25fba6ff', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/db7b6b63-4d41-43d0-987a-5bbf25fba6ff?uploadId=68d65095d73ec60008f93375', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/db7b6b63-4d41-43d0-987a-5bbf25fba6ff', 'UploadId': '68d65095d73ec60008f93375'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:37,936 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,936 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,936 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,936 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,936 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:37,936 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/db7b6b63-4d41-43d0-987a-5bbf25fba6ff gunicorn-registry stdout | uploadId=68d65095d73ec60008f93375 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083637Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:37,936 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083637Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | e70a0827cf9cdf223cacb06b1e848f4da9546bff0fb345991d0635a7f7bba57c gunicorn-registry stdout | 2025-09-26 08:36:37,936 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 4c0be4713aeb244b6cc1bac1dedfa7d599f8959e2264d8d433404cdece01687a gunicorn-registry stdout | 2025-09-26 08:36:37,936 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,936 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:37,937 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:37,943 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/db7b6b63-4d41-43d0-987a-5bbf25fba6ff?uploadId=68d65095d73ec60008f93375 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:36:37,943 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jht-1qlhwf-afc', 'x-amz-id-2': 'mg0l8jht-1qlhwf-afc', 'Date': 'Fri, 26 Sep 2025 08:36:37 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:37,943 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:37,943 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,943 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:37,943 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,944 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8jht-1qlhwf-afc', 'HostId': 'mg0l8jht-1qlhwf-afc', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jht-1qlhwf-afc', 'x-amz-id-2': 'mg0l8jht-1qlhwf-afc', 'date': 'Fri, 26 Sep 2025 08:36:37 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:36:37,944 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 0d2cf060-c9da-4d57-8c02-b19b169b45e9 took 0.023822546005249023 seconds gunicorn-registry stdout | 2025-09-26 08:36:37,944 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['0d2cf060-c9da-4d57-8c02-b19b169b45e9', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:37,945 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, '0d2cf060-c9da-4d57-8c02-b19b169b45e9', 3500929, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAIn2Nk0r8T/hn88C3qaO8/Eniu+/cvzfrlVHKvFHEi986/E/dh7+KF2e/1RSSSWV9Lb0PwEAAP//N8PNGwBcbQEAAAAAAAAAAFyrAQAAAAAOU3Su0aedAfWHSdbGItM2AhMuf1PaBNKSCi/+Zy6zqZRiLg==', 9, '{"chunks": [["uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e", 0, 3500929]]}', 2, 7166976, datetime.datetime(2025, 9, 26, 8, 36, 37, 257742), None, None, 13]) gunicorn-registry stdout | 2025-09-26 08:36:37,947 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:37,947 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:37,947 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:37,948 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:37,948 [251] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c'} gunicorn-registry stdout | 2025-09-26 08:36:37,948 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,948 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,948 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,948 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,948 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,948 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,948 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,948 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:37,948 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:37,948 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:37,948 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:37,949 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,949 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,949 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,949 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:37,949 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,949 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,949 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,949 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,949 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:37,949 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083637Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:37,949 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083637Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 4b48edb7cd91a8fb91a90939deb77aa4015bc37343eb7abb883c7368d1afe7df gunicorn-registry stdout | 2025-09-26 08:36:37,949 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | bf4a9b4899c4f9675f6cf4ae4265d22f41939e3a7a8b477184312637ccc18229 gunicorn-registry stdout | 2025-09-26 08:36:37,949 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,949 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:37,950 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:37,954 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:36:37,955 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8ji7-1ycsk1-dr8', 'x-amz-id-2': 'mg0l8ji7-1ycsk1-dr8', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:37 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:37,955 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:37,955 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,955 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:37,955 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,955 [251] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:36:37,955 [251] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:36:37,955 [251] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c gunicorn-registry stdout | 2025-09-26 08:36:37,955 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:37,956 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:37,956 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:37,956 [251] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:36:37,956 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,956 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,956 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,956 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,956 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,956 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,956 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,956 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:37,956 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:37,956 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:37,956 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:37,956 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,957 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,957 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,957 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:37,957 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,957 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,957 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,957 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,957 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,957 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:37,957 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083637Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:37,957 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083637Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 61257f7b135908462222421cbd041fd4f8696c0a081e0d5d4d137eedf19c1619 gunicorn-registry stdout | 2025-09-26 08:36:37,957 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | cf02b697fe813486f0ae24356955abc5b7a66a52963541352fba83f012823778 gunicorn-registry stdout | 2025-09-26 08:36:37,957 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,957 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,957 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:37,958 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:37,963 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:37,963 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jif-236ynn-8se', 'x-amz-id-2': 'mg0l8jif-236ynn-8se', 'ETag': '"15c25308dfd7d923db6b0c81593d4b12-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:37 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '3500929', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:37 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:37,963 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:37,963 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,963 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:37,963 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,963 [251] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:36:37,963 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:37,964 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:37,964 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:37,964 [251] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c', 'extra_args': {}, 'callbacks': [], 'size': 3500929} gunicorn-registry stdout | 2025-09-26 08:36:37,964 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,964 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,964 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,964 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,964 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,964 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,964 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,964 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,964 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,964 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,964 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:37,964 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:37,964 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:37,964 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:37,965 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,965 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,965 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,965 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:37,965 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,965 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,965 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,965 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,965 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,965 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:37,965 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6e5e0e75-7891-4151-9d22-1e6c196fdf7e gunicorn-registry stdout | x-amz-date:20250926T083637Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:37,965 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083637Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | fb139fb9d4926a28dfe7fc1672183d8d5cf0e1c360467de8afeb4b838f488e42 gunicorn-registry stdout | 2025-09-26 08:36:37,965 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 4b3c42cbf35a3f9f8c0fe7f2953d7386f0004c34d8912bbd9344df21d1ab80a3 gunicorn-registry stdout | 2025-09-26 08:36:37,965 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,965 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,965 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:37,966 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:37,966 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:37,994 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:36:37,994 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jio-28hdwg-snb', 'x-amz-id-2': 'mg0l8jio-28hdwg-snb', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:36:37 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:37,994 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:36:37.000Z"15c25308dfd7d923db6b0c81593d4b12-1"' gunicorn-registry stdout | 2025-09-26 08:36:37,995 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,995 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:37,995 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:37,995 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:37,995 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:37,996 [251] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 0d2cf060-c9da-4d57-8c02-b19b169b45e9 with digest sha256:5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c took 0.04063272476196289 seconds gunicorn-registry stdout | 2025-09-26 08:36:37,996 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['0d2cf060-c9da-4d57-8c02-b19b169b45e9', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:37,997 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:37,998 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['44261819-f5a1-4604-8a17-65081102f10e', 3500929, 7166976, True, True, 'sha256:5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c']) gunicorn-registry stdout | 2025-09-26 08:36:37,999 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [14, 9]) gunicorn-registry stdout | 2025-09-26 08:36:38,000 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,001 [251] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [2, 14, datetime.datetime(2025, 9, 26, 8, 36, 38, 973), datetime.datetime(2025, 9, 26, 9, 36, 38, 953)]) gunicorn-registry stdout | 2025-09-26 08:36:38,002 [251] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [13]) securityworker stdout | 2025-09-26 08:36:38,003 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 HTTP/1.1" 200 0 securityworker stdout | 2025-09-26 08:36:38,003 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jh9-1e9mui-e1a', 'x-amz-id-2': 'mg0l8jh9-1e9mui-e1a', 'ETag': '"54a01009f17bdb7ec1dd1cb427244304"', 'Date': 'Fri, 26 Sep 2025 08:36:38 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} securityworker stdout | 2025-09-26 08:36:38,003 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:38,003 [251] [DEBUG] [app] Ending request: urn:request:5084a65b-6e63-4f3f-b64d-bdb07ea882d6 (/v2/testorg/alpine/blobs/uploads/0d2cf060-c9da-4d57-8c02-b19b169b45e9) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:5084a65b-6e63-4f3f-b64d-bdb07ea882d6', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/0d2cf060-c9da-4d57-8c02-b19b169b45e9?digest=sha256:5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c', 'path': '/v2/testorg/alpine/blobs/uploads/0d2cf060-c9da-4d57-8c02-b19b169b45e9', 'parameters': {'digest': 'sha256:5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} securityworker stdout | 2025-09-26 08:36:38,003 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.PutObject: calling handler securityworker stdout | 2025-09-26 08:36:38,003 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:36:38,003 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.PutObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,004 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8jh9-1e9mui-e1a', 'HostId': 'mg0l8jh9-1e9mui-e1a', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jh9-1e9mui-e1a', 'x-amz-id-2': 'mg0l8jh9-1e9mui-e1a', 'etag': '"54a01009f17bdb7ec1dd1cb427244304"', 'date': 'Fri, 26 Sep 2025 08:36:38 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"54a01009f17bdb7ec1dd1cb427244304"'} securityworker stdout | 2025-09-26 08:36:38,004 [86] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [13, 9]) gunicorn-registry stdout | 2025-09-26 08:36:38,004 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:38,005 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:38,005 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:38 +0000] "PUT /v2/testorg/alpine/blobs/uploads/0d2cf060-c9da-4d57-8c02-b19b169b45e9?digest=sha256%3A5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:38 +0000] "PUT /v2/testorg/alpine/blobs/uploads/0d2cf060-c9da-4d57-8c02-b19b169b45e9?digest=sha256%3A5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.102 1849 0.102) securityworker stdout | 2025-09-26 08:36:38,008 [86] [DEBUG] [peewee] ('((SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL ((SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1") UNION ALL (SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "manifestblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q2"))) UNION ALL (((SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q3") UNION ALL (SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "manifestblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q4")) UNION ALL ((SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "manifestblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q5") UNION ALL (SELECT * FROM (SELECT "t7"."id", "t7"."content_checksum", "t7"."image_size", "t7"."uuid", "t7"."cas_path", "t7"."uncompressed_size" FROM "imagestorage" AS "t7" INNER JOIN "manifestblob" AS "t8" ON ("t8"."blob_id" = "t7"."id") WHERE (("t8"."repository_id" = %s) AND ("t7"."content_checksum" = %s)) LIMIT %s) AS "q6")))', [1, 'sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1', 1, 1, 'sha256:f93b7d3396c22354724b502c69276a730003297e4c24bd6d03fc16b0e50090d3', 1, 1, 'sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160', 1, 1, 'sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 1, 1, 'sha256:cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a', 1, 1, 'sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 1, 1, 'sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d', 1]) securityworker stdout | 2025-09-26 08:36:38,012 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['53f7e6a1-c1fa-4b76-a4e8-6dc9e980625a']) securityworker stdout | 2025-09-26 08:36:38,013 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:38,013 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['37644509-1acb-4be7-86bb-9da6c1f66944']) securityworker stdout | 2025-09-26 08:36:38,014 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:38,015 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['67781ee4-5131-487b-87a9-bacb6fd3222b']) securityworker stdout | 2025-09-26 08:36:38,016 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:38,017 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:38,017 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:38,019 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['7a6c7f25-8d9f-4aed-8ba3-600ed78926b1']) securityworker stdout | 2025-09-26 08:36:38,020 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['42b92989-996c-4697-bd9f-edbb4e9f8130']) securityworker stdout | 2025-09-26 08:36:38,020 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:38,021 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:38,022 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['f785ed9b-6c3a-470f-b73e-d4a661cdad38']) securityworker stdout | 2025-09-26 08:36:38,023 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:38,023 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:38,025 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:38,025 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s)', [1]) securityworker stdout | 2025-09-26 08:36:38,026 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) securityworker stdout | 2025-09-26 08:36:38,028 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) securityworker stdout | 2025-09-26 08:36:38,029 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Indexing manifest [1] 2/quayrepo@sha256:cfdb19c8fdc4b5ff3f5ed39b6958b1ac6aab0d41a39b00b15eafa9f3dab4e405 securityworker stdout | 2025-09-26 08:36:38,029 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,029 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,029 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,029 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,029 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,029 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,029 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,029 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,029 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,029 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,030 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,030 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,030 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,030 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,030 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,030 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/f9/f93b7d3396c22354724b502c69276a730003297e4c24bd6d03fc16b0e50090d3 securityworker stdout | 2025-09-26 08:36:38,036 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5bU9TOW1PVE5pTjJRek16azJZekl5TXpVME56STBZalV3TW1NMk9USTNObUUzTXpBd01ETXlPVGRsTkdNeU5HSmtObVF3TTJaak1UWmlNR1UxTURBNU1HUXpQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDE2VkRKeFprSTFKVEpHV1UxbEpUSkdiemxXWm00M1ZFSlVOWGx2VEVsQkpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qTTVPQ0lzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5yZ1p0Rm9pRjNfRmx4cTdRd1c1TVVxaHYxblBvMkxuZmJ6Vmhtd2FRd3FTbldwTkZ1WllJQlZaR0I1RHdoOC1kR1l0NVlIdGNTc0F0cTlDYzJ3ZUtZWUJqZ0FTaTY3VGhCTHUxOUJoT3pPOHJQU3BWbWdBeHRRS2dVek9RTGpveXFIbmpDVzc3RG1BX3IwWmxnSHh0ZkZ0cTBIemxIeG9DVWVMWGRyV1ZYMTB2anJYQ0VJTUtER1RvTkxMOWdDSFJVc2R4R2U2aGVmRlc3d1hrX2RsX0lBZW9HeUg4eF92cXJBQmppb1FkODhXUEs0NHZJRXRrSlAydEZtclN5T3lYd0F3dkU2VGhaLVg2TEp3b3dyY0JHSFRuZnNDaXdzMVV1LWNNckEzWjJTdUhCZWYzb2RzYV9uUVd5MG5tXzVoZTNzUUhkVXozNmpQV05Wc3lfaEdlTkE=/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/f9/f93b7d3396c22354724b502c69276a730003297e4c24bd6d03fc16b0e50090d3?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=zT2qfB5%2FYMe%2Fo9Vfn7TBT5yoLIA%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,036 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,036 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,036 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,036 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,036 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,036 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,037 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,037 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,037 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,037 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,037 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,037 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,037 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,037 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,037 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,037 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/f9/f93b7d3396c22354724b502c69276a730003297e4c24bd6d03fc16b0e50090d3 securityworker stdout | 2025-09-26 08:36:38,042 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5bU9TOW1PVE5pTjJRek16azJZekl5TXpVME56STBZalV3TW1NMk9USTNObUUzTXpBd01ETXlPVGRsTkdNeU5HSmtObVF3TTJaak1UWmlNR1UxTURBNU1HUXpQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDE2VkRKeFprSTFKVEpHV1UxbEpUSkdiemxXWm00M1ZFSlVOWGx2VEVsQkpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qTTVPQ0lzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5yZ1p0Rm9pRjNfRmx4cTdRd1c1TVVxaHYxblBvMkxuZmJ6Vmhtd2FRd3FTbldwTkZ1WllJQlZaR0I1RHdoOC1kR1l0NVlIdGNTc0F0cTlDYzJ3ZUtZWUJqZ0FTaTY3VGhCTHUxOUJoT3pPOHJQU3BWbWdBeHRRS2dVek9RTGpveXFIbmpDVzc3RG1BX3IwWmxnSHh0ZkZ0cTBIemxIeG9DVWVMWGRyV1ZYMTB2anJYQ0VJTUtER1RvTkxMOWdDSFJVc2R4R2U2aGVmRlc3d1hrX2RsX0lBZW9HeUg4eF92cXJBQmppb1FkODhXUEs0NHZJRXRrSlAydEZtclN5T3lYd0F3dkU2VGhaLVg2TEp3b3dyY0JHSFRuZnNDaXdzMVV1LWNNckEzWjJTdUhCZWYzb2RzYV9uUVd5MG5tXzVoZTNzUUhkVXozNmpQV05Wc3lfaEdlTkE=/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/f9/f93b7d3396c22354724b502c69276a730003297e4c24bd6d03fc16b0e50090d3?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=zT2qfB5%2FYMe%2Fo9Vfn7TBT5yoLIA%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,042 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,042 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,042 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,042 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,042 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,042 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,042 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,042 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,043 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,043 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,044 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,044 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,044 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,044 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,044 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,044 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:38,049 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAxYlRkM2RtTklia1JuV1dGWVJWSkJZWGRyVmxKWllXdE9ZMmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRVNiOTRRTnBybmQ2RTlOUmtfazFMZTlWM2NtUGp0cW5iTVZITDd2MUdUQU9TaWlGd2xYNUd6T2RMYW1qRTl5UlVRM3p6bHlwSzVPbklfYTRXdDl0OEw0U1liMUJBSkxqM3JJc3hDaWpBVTZROGVCVG45VHdGREpkWVBQd011YV80VFN5VV9RSjJEXzJkZW1YM3UtaEptdnQzNXRNM2xnRnlnSjcxaU9CcERZMzU2Z3lCci04aEJUUEFIeTNHTUhBdFN3Y1NvTHlqdEk4VmpTR2ZIQ25YbERTU2Q0S19qZUpnVU5kclY1elMybEZyMWJ5NE9telJpNWpRY2dtTHlyZFJiYXVYT2ZJVDNsM0hFN0JnZjgyZ0NQa2ZsRUs5NVcyeGlYQkdob0lJODZxNExENU1KYUxCQklEZkt5X3laNnl3MGdna1NvYTM0cmN6ZVBGMFpvZ3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=5m7wvcHnDgYaXERAawkVRYakNcg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,049 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,049 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,049 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,049 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,049 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,049 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,049 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,049 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,049 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,049 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,049 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,049 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,050 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,050 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,050 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,050 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:38,055 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAxYlRkM2RtTklia1JuV1dGWVJWSkJZWGRyVmxKWllXdE9ZMmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRVNiOTRRTnBybmQ2RTlOUmtfazFMZTlWM2NtUGp0cW5iTVZITDd2MUdUQU9TaWlGd2xYNUd6T2RMYW1qRTl5UlVRM3p6bHlwSzVPbklfYTRXdDl0OEw0U1liMUJBSkxqM3JJc3hDaWpBVTZROGVCVG45VHdGREpkWVBQd011YV80VFN5VV9RSjJEXzJkZW1YM3UtaEptdnQzNXRNM2xnRnlnSjcxaU9CcERZMzU2Z3lCci04aEJUUEFIeTNHTUhBdFN3Y1NvTHlqdEk4VmpTR2ZIQ25YbERTU2Q0S19qZUpnVU5kclY1elMybEZyMWJ5NE9telJpNWpRY2dtTHlyZFJiYXVYT2ZJVDNsM0hFN0JnZjgyZ0NQa2ZsRUs5NVcyeGlYQkdob0lJODZxNExENU1KYUxCQklEZkt5X3laNnl3MGdna1NvYTM0cmN6ZVBGMFpvZ3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=5m7wvcHnDgYaXERAawkVRYakNcg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,056 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,056 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,056 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,056 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,056 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,056 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,056 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,056 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,056 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,056 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,056 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,056 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,056 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,056 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,056 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,056 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cd/cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a securityworker stdout | 2025-09-26 08:36:38,062 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5alpDOWpaREF4WmpNd056RTVZV0V4WlRsak4yWTVOelEyWlRVNU5ESTBZMlk1TnpBeU1qYzVaVGhsWkdJeU4yUmlNbU5rTldFME1ESTFOMlprTVdSbU9UTmhQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDExV1V4SVlrNHdNbFJEU0V4cGRsWlhSSE4xYURrMVJGWjZabWNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuUDA0NDdMNnpRTHNDUjNkdDlTSDlkaDVmRXdQWUF6allQSnVieGRiRHVCejl2TEhYLV9xSW05eFN1MThCQ2FFUXdnMUFfWnp1RVZxZTgxdnc4TnJrWGRYbk1fNDMyQ2lnQUhKY25hZFlCd21OejkyUE9aVjFXb0YzeFRrOU1NeVkwcU1yelhVcXpYdy1iM2hrY1lQS3FVMURWMUdOSnc0N2tXNmRBVER4Tkhzc0pJTDAyU1VLMUFCVGUtcHVXcEpacHhmOWI2dVd5ZHl1ZzhjZWotUFRVSE1oVUttUDkxX0lkaThFY0dtdHFUX0JyeUdvSFFma0c0ZjNJU2E2WTMybnc1dEs5T3Zhb2lRRHpidnpCS0ZvdGoycVVFREIzM2Myd1JpQWc4dF9lcTVtVGI1SGJTb1VqcUp3YVl0NmRSeXlCbVhCYjBKdUlYZUZ1el9rOU8wSUp3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cd/cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=uYLHbN02TCHLivVWDsuh95DVzfg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,062 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,062 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,062 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,062 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,062 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,062 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,062 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,062 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,062 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,062 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,062 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,062 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,062 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,062 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,062 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,062 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cd/cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a securityworker stdout | 2025-09-26 08:36:38,067 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5alpDOWpaREF4WmpNd056RTVZV0V4WlRsak4yWTVOelEyWlRVNU5ESTBZMlk1TnpBeU1qYzVaVGhsWkdJeU4yUmlNbU5rTldFME1ESTFOMlprTVdSbU9UTmhQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDExV1V4SVlrNHdNbFJEU0V4cGRsWlhSSE4xYURrMVJGWjZabWNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuUDA0NDdMNnpRTHNDUjNkdDlTSDlkaDVmRXdQWUF6allQSnVieGRiRHVCejl2TEhYLV9xSW05eFN1MThCQ2FFUXdnMUFfWnp1RVZxZTgxdnc4TnJrWGRYbk1fNDMyQ2lnQUhKY25hZFlCd21OejkyUE9aVjFXb0YzeFRrOU1NeVkwcU1yelhVcXpYdy1iM2hrY1lQS3FVMURWMUdOSnc0N2tXNmRBVER4Tkhzc0pJTDAyU1VLMUFCVGUtcHVXcEpacHhmOWI2dVd5ZHl1ZzhjZWotUFRVSE1oVUttUDkxX0lkaThFY0dtdHFUX0JyeUdvSFFma0c0ZjNJU2E2WTMybnc1dEs5T3Zhb2lRRHpidnpCS0ZvdGoycVVFREIzM2Myd1JpQWc4dF9lcTVtVGI1SGJTb1VqcUp3YVl0NmRSeXlCbVhCYjBKdUlYZUZ1el9rOU8wSUp3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cd/cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=uYLHbN02TCHLivVWDsuh95DVzfg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,068 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,068 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,068 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,068 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,068 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,069 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,069 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,069 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,069 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,069 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,069 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,069 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,069 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,069 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,069 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,069 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:38,075 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAxYlRkM2RtTklia1JuV1dGWVJWSkJZWGRyVmxKWllXdE9ZMmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRVNiOTRRTnBybmQ2RTlOUmtfazFMZTlWM2NtUGp0cW5iTVZITDd2MUdUQU9TaWlGd2xYNUd6T2RMYW1qRTl5UlVRM3p6bHlwSzVPbklfYTRXdDl0OEw0U1liMUJBSkxqM3JJc3hDaWpBVTZROGVCVG45VHdGREpkWVBQd011YV80VFN5VV9RSjJEXzJkZW1YM3UtaEptdnQzNXRNM2xnRnlnSjcxaU9CcERZMzU2Z3lCci04aEJUUEFIeTNHTUhBdFN3Y1NvTHlqdEk4VmpTR2ZIQ25YbERTU2Q0S19qZUpnVU5kclY1elMybEZyMWJ5NE9telJpNWpRY2dtTHlyZFJiYXVYT2ZJVDNsM0hFN0JnZjgyZ0NQa2ZsRUs5NVcyeGlYQkdob0lJODZxNExENU1KYUxCQklEZkt5X3laNnl3MGdna1NvYTM0cmN6ZVBGMFpvZ3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=5m7wvcHnDgYaXERAawkVRYakNcg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,075 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,075 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,075 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,075 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,075 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,075 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,075 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,075 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,075 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,075 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,075 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,075 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,075 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,075 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,075 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,075 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:38,081 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAxYlRkM2RtTklia1JuV1dGWVJWSkJZWGRyVmxKWllXdE9ZMmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRVNiOTRRTnBybmQ2RTlOUmtfazFMZTlWM2NtUGp0cW5iTVZITDd2MUdUQU9TaWlGd2xYNUd6T2RMYW1qRTl5UlVRM3p6bHlwSzVPbklfYTRXdDl0OEw0U1liMUJBSkxqM3JJc3hDaWpBVTZROGVCVG45VHdGREpkWVBQd011YV80VFN5VV9RSjJEXzJkZW1YM3UtaEptdnQzNXRNM2xnRnlnSjcxaU9CcERZMzU2Z3lCci04aEJUUEFIeTNHTUhBdFN3Y1NvTHlqdEk4VmpTR2ZIQ25YbERTU2Q0S19qZUpnVU5kclY1elMybEZyMWJ5NE9telJpNWpRY2dtTHlyZFJiYXVYT2ZJVDNsM0hFN0JnZjgyZ0NQa2ZsRUs5NVcyeGlYQkdob0lJODZxNExENU1KYUxCQklEZkt5X3laNnl3MGdna1NvYTM0cmN6ZVBGMFpvZ3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=5m7wvcHnDgYaXERAawkVRYakNcg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,081 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,081 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,081 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,081 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,081 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,081 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,081 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,081 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,081 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,081 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,081 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,081 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,081 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,081 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,081 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,081 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b4/b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d securityworker stdout | 2025-09-26 08:36:38,087 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aU5DOWlOR1EzWTJFNU5EVTVabUV5TmpneFlUTTBPR1F5TWpsbFlqWmxNRFF4TldFd1lqSTROVEU1TjJNek9XTTROREpsWmpFNE1tVmhZalUzWWpJd01EbGtQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFYUTB0T1kwVmtTV0pTYTIxU05VWktlVTE2TUV0MmJVMVpkVEFsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuUnhZMVNfQ29OcHdqelY4aTlLWVZRaGpmQ2I2Q0s4bkNLYTdqakxXR0JWVnZGQkMydWJCR1JibDFxbmdFclotSDVBeDRCQ3I3NTFWTW1wODdoZDRwdzd3dmFYQ0NpUXZRRHc3SThhWmVacHg4MXVqWFpJNmlaTjEwX3Itc2JfM2o0aUFXbGdsdkVaWE9rcnY5eXRCWU1OZkFMLXRMbm1uTUNDVzBoZFBHd3NDSWV4eGN3ZmMzOHBOaXYycmxZZlYwRmgydHR3M0h5cm9xTW1uM1k3SXptTUhNUkhLUGNUc0RHZzRnR3VEVFhtSm5FTFg3OUVLQmVNVzFIM1N0ZWk2aVptTTdaOVFzWk1rbEdhMWZBRy1QOG44ZEJzS3J4dkwwTmNfT0lfNkFqVkQ3ZE9hNjVqRWtfcVFWWTJDR2dYOHdJZUV2Unk5UHEzcFZDMXowcEVici1B/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b4/b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=WCKNcEdIbRkmR5FJyMz0KvmMYu0%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,087 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,087 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,087 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,087 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,087 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,087 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,087 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,087 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,087 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,087 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,087 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,087 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,088 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,088 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,088 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,088 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b4/b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d securityworker stdout | 2025-09-26 08:36:38,093 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aU5DOWlOR1EzWTJFNU5EVTVabUV5TmpneFlUTTBPR1F5TWpsbFlqWmxNRFF4TldFd1lqSTROVEU1TjJNek9XTTROREpsWmpFNE1tVmhZalUzWWpJd01EbGtQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFYUTB0T1kwVmtTV0pTYTIxU05VWktlVTE2TUV0MmJVMVpkVEFsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuUnhZMVNfQ29OcHdqelY4aTlLWVZRaGpmQ2I2Q0s4bkNLYTdqakxXR0JWVnZGQkMydWJCR1JibDFxbmdFclotSDVBeDRCQ3I3NTFWTW1wODdoZDRwdzd3dmFYQ0NpUXZRRHc3SThhWmVacHg4MXVqWFpJNmlaTjEwX3Itc2JfM2o0aUFXbGdsdkVaWE9rcnY5eXRCWU1OZkFMLXRMbm1uTUNDVzBoZFBHd3NDSWV4eGN3ZmMzOHBOaXYycmxZZlYwRmgydHR3M0h5cm9xTW1uM1k3SXptTUhNUkhLUGNUc0RHZzRnR3VEVFhtSm5FTFg3OUVLQmVNVzFIM1N0ZWk2aVptTTdaOVFzWk1rbEdhMWZBRy1QOG44ZEJzS3J4dkwwTmNfT0lfNkFqVkQ3ZE9hNjVqRWtfcVFWWTJDR2dYOHdJZUV2Unk5UHEzcFZDMXowcEVici1B/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b4/b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=WCKNcEdIbRkmR5FJyMz0KvmMYu0%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,093 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,093 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,093 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,093 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,093 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,093 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,093 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,093 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,093 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,094 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,094 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,094 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,094 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,094 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,094 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,094 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:38,100 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAxYlRkM2RtTklia1JuV1dGWVJWSkJZWGRyVmxKWllXdE9ZMmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRVNiOTRRTnBybmQ2RTlOUmtfazFMZTlWM2NtUGp0cW5iTVZITDd2MUdUQU9TaWlGd2xYNUd6T2RMYW1qRTl5UlVRM3p6bHlwSzVPbklfYTRXdDl0OEw0U1liMUJBSkxqM3JJc3hDaWpBVTZROGVCVG45VHdGREpkWVBQd011YV80VFN5VV9RSjJEXzJkZW1YM3UtaEptdnQzNXRNM2xnRnlnSjcxaU9CcERZMzU2Z3lCci04aEJUUEFIeTNHTUhBdFN3Y1NvTHlqdEk4VmpTR2ZIQ25YbERTU2Q0S19qZUpnVU5kclY1elMybEZyMWJ5NE9telJpNWpRY2dtTHlyZFJiYXVYT2ZJVDNsM0hFN0JnZjgyZ0NQa2ZsRUs5NVcyeGlYQkdob0lJODZxNExENU1KYUxCQklEZkt5X3laNnl3MGdna1NvYTM0cmN6ZVBGMFpvZ3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=5m7wvcHnDgYaXERAawkVRYakNcg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,100 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,100 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,100 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,100 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,100 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,100 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,100 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,100 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,100 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,100 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,100 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,100 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,100 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,100 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,100 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,100 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:38,106 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAxYlRkM2RtTklia1JuV1dGWVJWSkJZWGRyVmxKWllXdE9ZMmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRVNiOTRRTnBybmQ2RTlOUmtfazFMZTlWM2NtUGp0cW5iTVZITDd2MUdUQU9TaWlGd2xYNUd6T2RMYW1qRTl5UlVRM3p6bHlwSzVPbklfYTRXdDl0OEw0U1liMUJBSkxqM3JJc3hDaWpBVTZROGVCVG45VHdGREpkWVBQd011YV80VFN5VV9RSjJEXzJkZW1YM3UtaEptdnQzNXRNM2xnRnlnSjcxaU9CcERZMzU2Z3lCci04aEJUUEFIeTNHTUhBdFN3Y1NvTHlqdEk4VmpTR2ZIQ25YbERTU2Q0S19qZUpnVU5kclY1elMybEZyMWJ5NE9telJpNWpRY2dtTHlyZFJiYXVYT2ZJVDNsM0hFN0JnZjgyZ0NQa2ZsRUs5NVcyeGlYQkdob0lJODZxNExENU1KYUxCQklEZkt5X3laNnl3MGdna1NvYTM0cmN6ZVBGMFpvZ3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=5m7wvcHnDgYaXERAawkVRYakNcg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,106 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,106 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,106 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,106 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,106 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,106 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,106 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,107 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,107 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,107 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,107 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,107 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,107 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,107 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,107 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,107 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:38,112 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAxYlRkM2RtTklia1JuV1dGWVJWSkJZWGRyVmxKWllXdE9ZMmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRVNiOTRRTnBybmQ2RTlOUmtfazFMZTlWM2NtUGp0cW5iTVZITDd2MUdUQU9TaWlGd2xYNUd6T2RMYW1qRTl5UlVRM3p6bHlwSzVPbklfYTRXdDl0OEw0U1liMUJBSkxqM3JJc3hDaWpBVTZROGVCVG45VHdGREpkWVBQd011YV80VFN5VV9RSjJEXzJkZW1YM3UtaEptdnQzNXRNM2xnRnlnSjcxaU9CcERZMzU2Z3lCci04aEJUUEFIeTNHTUhBdFN3Y1NvTHlqdEk4VmpTR2ZIQ25YbERTU2Q0S19qZUpnVU5kclY1elMybEZyMWJ5NE9telJpNWpRY2dtTHlyZFJiYXVYT2ZJVDNsM0hFN0JnZjgyZ0NQa2ZsRUs5NVcyeGlYQkdob0lJODZxNExENU1KYUxCQklEZkt5X3laNnl3MGdna1NvYTM0cmN6ZVBGMFpvZ3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=5m7wvcHnDgYaXERAawkVRYakNcg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,112 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,112 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,112 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,112 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,112 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,112 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,112 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,112 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,112 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,113 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,113 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,113 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,113 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,113 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,113 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,113 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:38,119 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAxYlRkM2RtTklia1JuV1dGWVJWSkJZWGRyVmxKWllXdE9ZMmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRVNiOTRRTnBybmQ2RTlOUmtfazFMZTlWM2NtUGp0cW5iTVZITDd2MUdUQU9TaWlGd2xYNUd6T2RMYW1qRTl5UlVRM3p6bHlwSzVPbklfYTRXdDl0OEw0U1liMUJBSkxqM3JJc3hDaWpBVTZROGVCVG45VHdGREpkWVBQd011YV80VFN5VV9RSjJEXzJkZW1YM3UtaEptdnQzNXRNM2xnRnlnSjcxaU9CcERZMzU2Z3lCci04aEJUUEFIeTNHTUhBdFN3Y1NvTHlqdEk4VmpTR2ZIQ25YbERTU2Q0S19qZUpnVU5kclY1elMybEZyMWJ5NE9telJpNWpRY2dtTHlyZFJiYXVYT2ZJVDNsM0hFN0JnZjgyZ0NQa2ZsRUs5NVcyeGlYQkdob0lJODZxNExENU1KYUxCQklEZkt5X3laNnl3MGdna1NvYTM0cmN6ZVBGMFpvZ3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=5m7wvcHnDgYaXERAawkVRYakNcg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,119 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,119 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,119 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,119 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,119 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,119 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,119 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,119 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,119 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,119 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,119 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,119 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,119 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,119 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,119 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,119 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:38,125 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAxYlRkM2RtTklia1JuV1dGWVJWSkJZWGRyVmxKWllXdE9ZMmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRVNiOTRRTnBybmQ2RTlOUmtfazFMZTlWM2NtUGp0cW5iTVZITDd2MUdUQU9TaWlGd2xYNUd6T2RMYW1qRTl5UlVRM3p6bHlwSzVPbklfYTRXdDl0OEw0U1liMUJBSkxqM3JJc3hDaWpBVTZROGVCVG45VHdGREpkWVBQd011YV80VFN5VV9RSjJEXzJkZW1YM3UtaEptdnQzNXRNM2xnRnlnSjcxaU9CcERZMzU2Z3lCci04aEJUUEFIeTNHTUhBdFN3Y1NvTHlqdEk4VmpTR2ZIQ25YbERTU2Q0S19qZUpnVU5kclY1elMybEZyMWJ5NE9telJpNWpRY2dtTHlyZFJiYXVYT2ZJVDNsM0hFN0JnZjgyZ0NQa2ZsRUs5NVcyeGlYQkdob0lJODZxNExENU1KYUxCQklEZkt5X3laNnl3MGdna1NvYTM0cmN6ZVBGMFpvZ3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=5m7wvcHnDgYaXERAawkVRYakNcg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,125 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,125 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,125 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,125 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,125 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,125 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,126 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,126 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,126 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,126 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,126 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,126 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,126 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,126 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,126 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,126 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:38,131 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAxYlRkM2RtTklia1JuV1dGWVJWSkJZWGRyVmxKWllXdE9ZMmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRVNiOTRRTnBybmQ2RTlOUmtfazFMZTlWM2NtUGp0cW5iTVZITDd2MUdUQU9TaWlGd2xYNUd6T2RMYW1qRTl5UlVRM3p6bHlwSzVPbklfYTRXdDl0OEw0U1liMUJBSkxqM3JJc3hDaWpBVTZROGVCVG45VHdGREpkWVBQd011YV80VFN5VV9RSjJEXzJkZW1YM3UtaEptdnQzNXRNM2xnRnlnSjcxaU9CcERZMzU2Z3lCci04aEJUUEFIeTNHTUhBdFN3Y1NvTHlqdEk4VmpTR2ZIQ25YbERTU2Q0S19qZUpnVU5kclY1elMybEZyMWJ5NE9telJpNWpRY2dtTHlyZFJiYXVYT2ZJVDNsM0hFN0JnZjgyZ0NQa2ZsRUs5NVcyeGlYQkdob0lJODZxNExENU1KYUxCQklEZkt5X3laNnl3MGdna1NvYTM0cmN6ZVBGMFpvZ3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=5m7wvcHnDgYaXERAawkVRYakNcg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,131 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,131 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,131 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,131 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,131 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,131 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,131 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,132 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,132 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,132 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,132 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,132 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,132 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,132 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,132 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,132 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a8/a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1 securityworker stdout | 2025-09-26 08:36:38,138 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE9DOWhPRFUzTm1Vd01tRXhNV0k1T0RRNFl6azNOakUzWWpoak1UQTVaV0ZpT0Rnd1kySXhNemMzTkRFM09HWmpOVE0zT0Rnek56TmlPVFk1WlRNMk5tWXhQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDA0VUVod1JFbHpkRm93UVhoamIyWjRXVmhZWjBoTVpYZFNVemdsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAub2N0NnBQQXFyVENLbUllUHU4TlFncDJRWGdNeVpTUERBdnpmMkRpcUpVVVp0NW9pWnRxcDJTNE9mT2Iwc1RqSk9rMG9nUkRLRjhIYTExUEdTbjJkTHRyX0JCeDdYZXJpcUpkck5aWHFlbHdPM09ET1RYSXRUZjIyb1lXLUlXSi1YUjNNck8tTElFOU95UDB5ZXB3b2d4dFVud21helJjZUdKVHJKbmJXMENUbmhpZ0xzd0E3cG52SWlzeEY1YWEwbTBRanFLa000YkhyalY3d0RyQUFreWcyMHNuaFcwLTIxYTVmN1lya2l0SlR4S3VHeVpfVHZRZXlaajc3WlFTYWt2WjhoZUVSNDFLNlFJcURsM1hiOTFXTE43NjJnOVp5UHJrcnlvejRwMnUtbDJRUnRkREtwYlB3M25zQ2V1TWtadWoxTVQ0U1JYUmpLejhlSGVaelFB/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a8/a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=8PHpDIstZ0AxcofxYXXgHLewRS8%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,138 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,138 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,138 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,138 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,138 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,138 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,138 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,138 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,138 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,138 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,138 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,138 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,138 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,138 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,138 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,138 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a8/a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1 securityworker stdout | 2025-09-26 08:36:38,144 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE9DOWhPRFUzTm1Vd01tRXhNV0k1T0RRNFl6azNOakUzWWpoak1UQTVaV0ZpT0Rnd1kySXhNemMzTkRFM09HWmpOVE0zT0Rnek56TmlPVFk1WlRNMk5tWXhQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDA0VUVod1JFbHpkRm93UVhoamIyWjRXVmhZWjBoTVpYZFNVemdsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAub2N0NnBQQXFyVENLbUllUHU4TlFncDJRWGdNeVpTUERBdnpmMkRpcUpVVVp0NW9pWnRxcDJTNE9mT2Iwc1RqSk9rMG9nUkRLRjhIYTExUEdTbjJkTHRyX0JCeDdYZXJpcUpkck5aWHFlbHdPM09ET1RYSXRUZjIyb1lXLUlXSi1YUjNNck8tTElFOU95UDB5ZXB3b2d4dFVud21helJjZUdKVHJKbmJXMENUbmhpZ0xzd0E3cG52SWlzeEY1YWEwbTBRanFLa000YkhyalY3d0RyQUFreWcyMHNuaFcwLTIxYTVmN1lya2l0SlR4S3VHeVpfVHZRZXlaajc3WlFTYWt2WjhoZUVSNDFLNlFJcURsM1hiOTFXTE43NjJnOVp5UHJrcnlvejRwMnUtbDJRUnRkREtwYlB3M25zQ2V1TWtadWoxTVQ0U1JYUmpLejhlSGVaelFB/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a8/a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=8PHpDIstZ0AxcofxYXXgHLewRS8%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,144 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,144 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,144 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,144 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,144 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,144 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,144 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,144 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,144 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,144 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,144 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,145 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,145 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,145 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,145 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,145 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9 securityworker stdout | 2025-09-26 08:36:38,150 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4ek5TOHpOVFkzTkdKak9HUTJNekE0TmpNNE5qRmpaamN4T0dJMk5XSXlOVFJoTkdJek16VXhaamRrWldNM09EVmlNemc0TjJOaE1XVmlNMlZpTVdGa01HVTVQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFzZFd0WFJYZE9XbEkwZERaNUpUSkNZa281UW1SWFIzaHNiRGRaUlNVelJDWkZlSEJwY21WelBURTNOVGc0TnpZek9UZ2lMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuVm5UQnFxVXM2T3dkN1ItaVJ5S0RjTXczZWk4S0pXdTFDS3Q3UlcwTURtckhKQlFvRG02VnNUM1Y2RmZ6NVhUNVgyeXJySFhDOWQtX3ExcEpucjVnV0xOeXZNTEJyUWd1ZjNXRlJ2anBWVW5NWGdkbm5MY2RQQldoTzZza3hJT2RGMU9LSVYtM1ZIRDRsOExWaXk0dDlIYVhFOVJSNFJnNTN3VzNrdzhpenB4NGlCY0E3bGxJQWx4UE5CdUVMRXVqVDhWN3Vid3RKXzZ6ZTZUaFZRSmR5TW9TQi1JU0VIMmVLVXpFdzZIU09ld0xJSmNpamU5alotY1BoT1FFZ1IzcEw5LVZXa01EN1p3c3czYmZObXJyZExoNmhheXU1YkZFNklkQjNWNGhJSkxqckY4YmJqS2RNWEZtUVhDRXRmdFA0dGVYVnlYUVNBLXd2b2JySzBldElB/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=lukWEwNZR4t6y%2BbJ9BdWGxll7YE%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,150 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,150 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,150 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,150 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,150 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,150 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,150 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,151 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,151 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,151 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,151 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,151 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,151 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,151 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,151 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,151 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9 securityworker stdout | 2025-09-26 08:36:38,156 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4ek5TOHpOVFkzTkdKak9HUTJNekE0TmpNNE5qRmpaamN4T0dJMk5XSXlOVFJoTkdJek16VXhaamRrWldNM09EVmlNemc0TjJOaE1XVmlNMlZpTVdGa01HVTVQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFzZFd0WFJYZE9XbEkwZERaNUpUSkNZa281UW1SWFIzaHNiRGRaUlNVelJDWkZlSEJwY21WelBURTNOVGc0TnpZek9UZ2lMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuVm5UQnFxVXM2T3dkN1ItaVJ5S0RjTXczZWk4S0pXdTFDS3Q3UlcwTURtckhKQlFvRG02VnNUM1Y2RmZ6NVhUNVgyeXJySFhDOWQtX3ExcEpucjVnV0xOeXZNTEJyUWd1ZjNXRlJ2anBWVW5NWGdkbm5MY2RQQldoTzZza3hJT2RGMU9LSVYtM1ZIRDRsOExWaXk0dDlIYVhFOVJSNFJnNTN3VzNrdzhpenB4NGlCY0E3bGxJQWx4UE5CdUVMRXVqVDhWN3Vid3RKXzZ6ZTZUaFZRSmR5TW9TQi1JU0VIMmVLVXpFdzZIU09ld0xJSmNpamU5alotY1BoT1FFZ1IzcEw5LVZXa01EN1p3c3czYmZObXJyZExoNmhheXU1YkZFNklkQjNWNGhJSkxqckY4YmJqS2RNWEZtUVhDRXRmdFA0dGVYVnlYUVNBLXd2b2JySzBldElB/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=lukWEwNZR4t6y%2BbJ9BdWGxll7YE%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,157 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,157 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,157 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,157 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,157 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,157 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,157 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,157 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,157 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,157 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,157 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,157 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,157 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,157 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,157 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,157 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:38,163 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAxYlRkM2RtTklia1JuV1dGWVJWSkJZWGRyVmxKWllXdE9ZMmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRVNiOTRRTnBybmQ2RTlOUmtfazFMZTlWM2NtUGp0cW5iTVZITDd2MUdUQU9TaWlGd2xYNUd6T2RMYW1qRTl5UlVRM3p6bHlwSzVPbklfYTRXdDl0OEw0U1liMUJBSkxqM3JJc3hDaWpBVTZROGVCVG45VHdGREpkWVBQd011YV80VFN5VV9RSjJEXzJkZW1YM3UtaEptdnQzNXRNM2xnRnlnSjcxaU9CcERZMzU2Z3lCci04aEJUUEFIeTNHTUhBdFN3Y1NvTHlqdEk4VmpTR2ZIQ25YbERTU2Q0S19qZUpnVU5kclY1elMybEZyMWJ5NE9telJpNWpRY2dtTHlyZFJiYXVYT2ZJVDNsM0hFN0JnZjgyZ0NQa2ZsRUs5NVcyeGlYQkdob0lJODZxNExENU1KYUxCQklEZkt5X3laNnl3MGdna1NvYTM0cmN6ZVBGMFpvZ3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=5m7wvcHnDgYaXERAawkVRYakNcg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,163 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,163 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,163 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,163 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,163 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,163 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,163 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,163 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,163 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,163 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,163 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,163 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,164 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,164 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,164 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,164 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:38,169 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAxYlRkM2RtTklia1JuV1dGWVJWSkJZWGRyVmxKWllXdE9ZMmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRVNiOTRRTnBybmQ2RTlOUmtfazFMZTlWM2NtUGp0cW5iTVZITDd2MUdUQU9TaWlGd2xYNUd6T2RMYW1qRTl5UlVRM3p6bHlwSzVPbklfYTRXdDl0OEw0U1liMUJBSkxqM3JJc3hDaWpBVTZROGVCVG45VHdGREpkWVBQd011YV80VFN5VV9RSjJEXzJkZW1YM3UtaEptdnQzNXRNM2xnRnlnSjcxaU9CcERZMzU2Z3lCci04aEJUUEFIeTNHTUhBdFN3Y1NvTHlqdEk4VmpTR2ZIQ25YbERTU2Q0S19qZUpnVU5kclY1elMybEZyMWJ5NE9telJpNWpRY2dtTHlyZFJiYXVYT2ZJVDNsM0hFN0JnZjgyZ0NQa2ZsRUs5NVcyeGlYQkdob0lJODZxNExENU1KYUxCQklEZkt5X3laNnl3MGdna1NvYTM0cmN6ZVBGMFpvZ3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=5m7wvcHnDgYaXERAawkVRYakNcg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,169 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,169 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,169 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,169 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,169 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,170 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,170 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,170 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,170 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,170 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,170 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,170 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,170 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,170 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,170 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,170 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:38,175 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAxYlRkM2RtTklia1JuV1dGWVJWSkJZWGRyVmxKWllXdE9ZMmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRVNiOTRRTnBybmQ2RTlOUmtfazFMZTlWM2NtUGp0cW5iTVZITDd2MUdUQU9TaWlGd2xYNUd6T2RMYW1qRTl5UlVRM3p6bHlwSzVPbklfYTRXdDl0OEw0U1liMUJBSkxqM3JJc3hDaWpBVTZROGVCVG45VHdGREpkWVBQd011YV80VFN5VV9RSjJEXzJkZW1YM3UtaEptdnQzNXRNM2xnRnlnSjcxaU9CcERZMzU2Z3lCci04aEJUUEFIeTNHTUhBdFN3Y1NvTHlqdEk4VmpTR2ZIQ25YbERTU2Q0S19qZUpnVU5kclY1elMybEZyMWJ5NE9telJpNWpRY2dtTHlyZFJiYXVYT2ZJVDNsM0hFN0JnZjgyZ0NQa2ZsRUs5NVcyeGlYQkdob0lJODZxNExENU1KYUxCQklEZkt5X3laNnl3MGdna1NvYTM0cmN6ZVBGMFpvZ3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=5m7wvcHnDgYaXERAawkVRYakNcg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,175 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,175 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,175 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,175 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,175 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,175 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,176 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,176 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,176 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,176 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,176 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,176 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,176 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,176 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,176 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,176 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:38,182 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAxYlRkM2RtTklia1JuV1dGWVJWSkJZWGRyVmxKWllXdE9ZMmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRVNiOTRRTnBybmQ2RTlOUmtfazFMZTlWM2NtUGp0cW5iTVZITDd2MUdUQU9TaWlGd2xYNUd6T2RMYW1qRTl5UlVRM3p6bHlwSzVPbklfYTRXdDl0OEw0U1liMUJBSkxqM3JJc3hDaWpBVTZROGVCVG45VHdGREpkWVBQd011YV80VFN5VV9RSjJEXzJkZW1YM3UtaEptdnQzNXRNM2xnRnlnSjcxaU9CcERZMzU2Z3lCci04aEJUUEFIeTNHTUhBdFN3Y1NvTHlqdEk4VmpTR2ZIQ25YbERTU2Q0S19qZUpnVU5kclY1elMybEZyMWJ5NE9telJpNWpRY2dtTHlyZFJiYXVYT2ZJVDNsM0hFN0JnZjgyZ0NQa2ZsRUs5NVcyeGlYQkdob0lJODZxNExENU1KYUxCQklEZkt5X3laNnl3MGdna1NvYTM0cmN6ZVBGMFpvZ3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=5m7wvcHnDgYaXERAawkVRYakNcg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,182 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,182 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,182 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,182 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,182 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,182 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,182 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,182 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,182 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,182 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,182 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,182 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,182 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,182 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,182 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,182 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4b/4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160 securityworker stdout | 2025-09-26 08:36:38,188 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4MFlpODBZakZoWmpGbE5UQmpaR0kxTTJNM05HWmlObVJpTmpNMk5qbGpPV1ZoTlRNMVpUZzNNREk0WTJVek56ZGlNVFZsTUdGbE5UY3hOekZrT0RWak1UWXdQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAyVkRGUmFrZGhaekkzVjFkNlVXdElWVFJTYlVFeVRuTjJVSE1sTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAucUZ1dkpIXzdkazFlQWVVbV9sVnphYnFNWmgwSVdoWVR2Xzl2TEN3OHQ5Zk9nTEdOLXdtVjk5a2ZqdDdHQkdUM2FxUkNXM2VQSzQzUGVjalRYT1dBU2hYUVB3NlVfWlgtRnVHYXZiVzd1QW82aHBLaENlZ0laT3lyd2ROQUdKelFrUVhEcHMyVGRjRjltSzZlTW4yTldnR0p4UGpRNWxlUmpoQ0ExRFFaM3ZkWTM0WGxFcHlRdWZTUUpPMm1ZbnlLaVhoOEZGdlQ2Z2tWM0JpZDROZHNZQXVrdW8zWFdJUkVrVkxhdDBGY3lVeVZhYmdTN3BCSnRscGhidGF6bDNWNC1FVzZ4ZHhGQWJuT0R1Wi04dFVQXzBfdlZWWWpRTU1yMkZpMDlMVG5LVVJxQzBBZGQ1OUU1Sjh0dmNmVnY3WWdGdGYxNnJOTGg0VE1kU04yRlM4MEZR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4b/4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=6T1QjGag27WWzQkHU4RmA2NsvPs%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,188 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,188 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,189 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,189 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,189 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,189 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,189 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,189 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,189 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,189 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,189 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,189 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,189 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,189 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,189 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,189 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4b/4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160 securityworker stdout | 2025-09-26 08:36:38,194 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4MFlpODBZakZoWmpGbE5UQmpaR0kxTTJNM05HWmlObVJpTmpNMk5qbGpPV1ZoTlRNMVpUZzNNREk0WTJVek56ZGlNVFZsTUdGbE5UY3hOekZrT0RWak1UWXdQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAyVkRGUmFrZGhaekkzVjFkNlVXdElWVFJTYlVFeVRuTjJVSE1sTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAucUZ1dkpIXzdkazFlQWVVbV9sVnphYnFNWmgwSVdoWVR2Xzl2TEN3OHQ5Zk9nTEdOLXdtVjk5a2ZqdDdHQkdUM2FxUkNXM2VQSzQzUGVjalRYT1dBU2hYUVB3NlVfWlgtRnVHYXZiVzd1QW82aHBLaENlZ0laT3lyd2ROQUdKelFrUVhEcHMyVGRjRjltSzZlTW4yTldnR0p4UGpRNWxlUmpoQ0ExRFFaM3ZkWTM0WGxFcHlRdWZTUUpPMm1ZbnlLaVhoOEZGdlQ2Z2tWM0JpZDROZHNZQXVrdW8zWFdJUkVrVkxhdDBGY3lVeVZhYmdTN3BCSnRscGhidGF6bDNWNC1FVzZ4ZHhGQWJuT0R1Wi04dFVQXzBfdlZWWWpRTU1yMkZpMDlMVG5LVVJxQzBBZGQ1OUU1Sjh0dmNmVnY3WWdGdGYxNnJOTGg0VE1kU04yRlM4MEZR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4b/4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=6T1QjGag27WWzQkHU4RmA2NsvPs%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,194 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,194 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,194 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,194 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,194 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,195 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,195 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,195 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,195 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,195 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,195 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,195 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,195 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,195 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,195 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,195 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:38,201 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAxYlRkM2RtTklia1JuV1dGWVJWSkJZWGRyVmxKWllXdE9ZMmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRVNiOTRRTnBybmQ2RTlOUmtfazFMZTlWM2NtUGp0cW5iTVZITDd2MUdUQU9TaWlGd2xYNUd6T2RMYW1qRTl5UlVRM3p6bHlwSzVPbklfYTRXdDl0OEw0U1liMUJBSkxqM3JJc3hDaWpBVTZROGVCVG45VHdGREpkWVBQd011YV80VFN5VV9RSjJEXzJkZW1YM3UtaEptdnQzNXRNM2xnRnlnSjcxaU9CcERZMzU2Z3lCci04aEJUUEFIeTNHTUhBdFN3Y1NvTHlqdEk4VmpTR2ZIQ25YbERTU2Q0S19qZUpnVU5kclY1elMybEZyMWJ5NE9telJpNWpRY2dtTHlyZFJiYXVYT2ZJVDNsM0hFN0JnZjgyZ0NQa2ZsRUs5NVcyeGlYQkdob0lJODZxNExENU1KYUxCQklEZkt5X3laNnl3MGdna1NvYTM0cmN6ZVBGMFpvZ3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=5m7wvcHnDgYaXERAawkVRYakNcg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,201 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,201 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,201 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,201 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,201 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,201 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,201 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,201 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,201 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,201 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,201 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,201 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,201 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,201 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,201 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,202 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:38,207 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAxYlRkM2RtTklia1JuV1dGWVJWSkJZWGRyVmxKWllXdE9ZMmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRVNiOTRRTnBybmQ2RTlOUmtfazFMZTlWM2NtUGp0cW5iTVZITDd2MUdUQU9TaWlGd2xYNUd6T2RMYW1qRTl5UlVRM3p6bHlwSzVPbklfYTRXdDl0OEw0U1liMUJBSkxqM3JJc3hDaWpBVTZROGVCVG45VHdGREpkWVBQd011YV80VFN5VV9RSjJEXzJkZW1YM3UtaEptdnQzNXRNM2xnRnlnSjcxaU9CcERZMzU2Z3lCci04aEJUUEFIeTNHTUhBdFN3Y1NvTHlqdEk4VmpTR2ZIQ25YbERTU2Q0S19qZUpnVU5kclY1elMybEZyMWJ5NE9telJpNWpRY2dtTHlyZFJiYXVYT2ZJVDNsM0hFN0JnZjgyZ0NQa2ZsRUs5NVcyeGlYQkdob0lJODZxNExENU1KYUxCQklEZkt5X3laNnl3MGdna1NvYTM0cmN6ZVBGMFpvZ3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=5m7wvcHnDgYaXERAawkVRYakNcg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,207 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,207 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,207 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,207 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,207 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,207 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,207 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,207 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,207 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,207 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,207 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,208 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,208 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,208 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,208 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,208 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:38,214 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAxYlRkM2RtTklia1JuV1dGWVJWSkJZWGRyVmxKWllXdE9ZMmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRVNiOTRRTnBybmQ2RTlOUmtfazFMZTlWM2NtUGp0cW5iTVZITDd2MUdUQU9TaWlGd2xYNUd6T2RMYW1qRTl5UlVRM3p6bHlwSzVPbklfYTRXdDl0OEw0U1liMUJBSkxqM3JJc3hDaWpBVTZROGVCVG45VHdGREpkWVBQd011YV80VFN5VV9RSjJEXzJkZW1YM3UtaEptdnQzNXRNM2xnRnlnSjcxaU9CcERZMzU2Z3lCci04aEJUUEFIeTNHTUhBdFN3Y1NvTHlqdEk4VmpTR2ZIQ25YbERTU2Q0S19qZUpnVU5kclY1elMybEZyMWJ5NE9telJpNWpRY2dtTHlyZFJiYXVYT2ZJVDNsM0hFN0JnZjgyZ0NQa2ZsRUs5NVcyeGlYQkdob0lJODZxNExENU1KYUxCQklEZkt5X3laNnl3MGdna1NvYTM0cmN6ZVBGMFpvZ3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=5m7wvcHnDgYaXERAawkVRYakNcg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,214 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,214 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,214 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,214 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,214 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,214 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,214 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,214 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,214 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,214 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,214 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,214 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,214 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,214 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,214 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,214 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:38,219 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAxYlRkM2RtTklia1JuV1dGWVJWSkJZWGRyVmxKWllXdE9ZMmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRVNiOTRRTnBybmQ2RTlOUmtfazFMZTlWM2NtUGp0cW5iTVZITDd2MUdUQU9TaWlGd2xYNUd6T2RMYW1qRTl5UlVRM3p6bHlwSzVPbklfYTRXdDl0OEw0U1liMUJBSkxqM3JJc3hDaWpBVTZROGVCVG45VHdGREpkWVBQd011YV80VFN5VV9RSjJEXzJkZW1YM3UtaEptdnQzNXRNM2xnRnlnSjcxaU9CcERZMzU2Z3lCci04aEJUUEFIeTNHTUhBdFN3Y1NvTHlqdEk4VmpTR2ZIQ25YbERTU2Q0S19qZUpnVU5kclY1elMybEZyMWJ5NE9telJpNWpRY2dtTHlyZFJiYXVYT2ZJVDNsM0hFN0JnZjgyZ0NQa2ZsRUs5NVcyeGlYQkdob0lJODZxNExENU1KYUxCQklEZkt5X3laNnl3MGdna1NvYTM0cmN6ZVBGMFpvZ3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=5m7wvcHnDgYaXERAawkVRYakNcg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,220 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,220 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,220 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,220 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,220 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,220 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,220 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,220 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,220 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,220 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,220 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,220 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,220 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,220 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,220 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,220 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:38,226 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAxYlRkM2RtTklia1JuV1dGWVJWSkJZWGRyVmxKWllXdE9ZMmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRVNiOTRRTnBybmQ2RTlOUmtfazFMZTlWM2NtUGp0cW5iTVZITDd2MUdUQU9TaWlGd2xYNUd6T2RMYW1qRTl5UlVRM3p6bHlwSzVPbklfYTRXdDl0OEw0U1liMUJBSkxqM3JJc3hDaWpBVTZROGVCVG45VHdGREpkWVBQd011YV80VFN5VV9RSjJEXzJkZW1YM3UtaEptdnQzNXRNM2xnRnlnSjcxaU9CcERZMzU2Z3lCci04aEJUUEFIeTNHTUhBdFN3Y1NvTHlqdEk4VmpTR2ZIQ25YbERTU2Q0S19qZUpnVU5kclY1elMybEZyMWJ5NE9telJpNWpRY2dtTHlyZFJiYXVYT2ZJVDNsM0hFN0JnZjgyZ0NQa2ZsRUs5NVcyeGlYQkdob0lJODZxNExENU1KYUxCQklEZkt5X3laNnl3MGdna1NvYTM0cmN6ZVBGMFpvZ3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=5m7wvcHnDgYaXERAawkVRYakNcg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,226 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,226 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,226 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,226 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,226 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,226 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:38,226 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:38,226 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:38,226 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:38,226 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:38,227 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:38,227 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:38,227 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:38,227 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:38,227 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:38,227 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876398 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:38,232 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAxYlRkM2RtTklia1JuV1dGWVJWSkJZWGRyVmxKWllXdE9ZMmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRVNiOTRRTnBybmQ2RTlOUmtfazFMZTlWM2NtUGp0cW5iTVZITDd2MUdUQU9TaWlGd2xYNUd6T2RMYW1qRTl5UlVRM3p6bHlwSzVPbklfYTRXdDl0OEw0U1liMUJBSkxqM3JJc3hDaWpBVTZROGVCVG45VHdGREpkWVBQd011YV80VFN5VV9RSjJEXzJkZW1YM3UtaEptdnQzNXRNM2xnRnlnSjcxaU9CcERZMzU2Z3lCci04aEJUUEFIeTNHTUhBdFN3Y1NvTHlqdEk4VmpTR2ZIQ25YbERTU2Q0S19qZUpnVU5kclY1elMybEZyMWJ5NE9telJpNWpRY2dtTHlyZFJiYXVYT2ZJVDNsM0hFN0JnZjgyZ0NQa2ZsRUs5NVcyeGlYQkdob0lJODZxNExENU1KYUxCQklEZkt5X3laNnl3MGdna1NvYTM0cmN6ZVBGMFpvZ3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=5m7wvcHnDgYaXERAawkVRYakNcg%3D&Expires=1758876398 securityworker stdout | 2025-09-26 08:36:38,232 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:36:38,232 [86] [DEBUG] [util.secscan.v4.api] POSTing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_report gunicorn-registry stdout | 2025-09-26 08:36:38,388 [258] [DEBUG] [app] Starting request: urn:request:f8037cab-2971-4280-b2c8-c48829f27e78 (/v2/testorg/alpine/blobs/uploads/b5478ff9-d72b-4676-90a2-da61b2d58e5f) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:38,388 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'b5478ff9-d72b-4676-90a2-da61b2d58e5f', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:38,388 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:38,388 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:38,389 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:38,389 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:38,389 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:38,389 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:38,390 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:38,391 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,393 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,394 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,395 [258] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,396 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,398 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,399 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,400 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:38,402 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['b5478ff9-d72b-4676-90a2-da61b2d58e5f', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,403 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:38,403 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:38,403 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:38,404 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:38,404 [258] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:38,404 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,404 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,404 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,405 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,405 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,405 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,405 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,405 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,405 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:38,405 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:38,405 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:38,405 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:38,406 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,406 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,406 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,406 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:38,406 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,406 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,406 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,406 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,406 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:38,407 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083638Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:38,407 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083638Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 800f76f4ba319730c19879f6dbbd2dbafd9e6ae9169d81ca7fbc6623d8968ff1 gunicorn-registry stdout | 2025-09-26 08:36:38,407 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | f9b80f228581b1b9d89eee81ccd3b59c633121c65c6a68f419fd0bab824a9d3b gunicorn-registry stdout | 2025-09-26 08:36:38,407 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,407 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:38,407 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:38,414 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:38,414 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jux-9j45sn-5rx', 'x-amz-id-2': 'mg0l8jux-9j45sn-5rx', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:38 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:38,414 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f68d65096d73ec60008f9337b' gunicorn-registry stdout | 2025-09-26 08:36:38,414 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,414 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:38,414 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,414 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8jux-9j45sn-5rx', 'HostId': 'mg0l8jux-9j45sn-5rx', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jux-9j45sn-5rx', 'x-amz-id-2': 'mg0l8jux-9j45sn-5rx', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:38 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f', 'UploadId': '68d65096d73ec60008f9337b'} gunicorn-registry stdout | 2025-09-26 08:36:38,414 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:38,415 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:36:38,416 [258] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:36:38,416 [258] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f', 'UploadId': '68d65096d73ec60008f9337b', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b894aa70>, 'ContentLength': 593} gunicorn-registry stdout | 2025-09-26 08:36:38,416 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,416 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,416 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,416 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,416 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,416 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,416 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,416 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,416 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:38,416 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:38,416 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:38,416 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:38,416 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,417 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,417 [258] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:36:38,417 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,417 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,417 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f', 'query_string': {'uploadId': '68d65096d73ec60008f9337b', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '593', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'lbW6VGPi2GbiqTDDPgOAdw==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b894aa70>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f?uploadId=68d65096d73ec60008f9337b&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f', 'UploadId': '68d65096d73ec60008f9337b', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b894aa70>, 'ContentLength': 593}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:38,417 [258] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,417 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,417 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,417 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,417 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:38,417 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f gunicorn-registry stdout | partNumber=1&uploadId=68d65096d73ec60008f9337b gunicorn-registry stdout | content-length:593 gunicorn-registry stdout | content-md5:lbW6VGPi2GbiqTDDPgOAdw== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083638Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:38,417 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083638Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | d7dbe781a8d62075d5ab7601f7c169e2a5d96ba20334ed608b86f3566379dc1e gunicorn-registry stdout | 2025-09-26 08:36:38,417 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | e9d77a62b5598b305b4991bebe4d0416006a336af62b27e8a23d27f1ce598f84 gunicorn-registry stdout | 2025-09-26 08:36:38,417 [258] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,417 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:38,417 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:38,418 [258] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:38,419 [258] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:36:38,485 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f?uploadId=68d65096d73ec60008f9337b&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:38,485 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jv7-9ozo7d-tjz', 'x-amz-id-2': 'mg0l8jv7-9ozo7d-tjz', 'ETag': '"95b5ba5463e2d866e2a930c33e038077"', 'Date': 'Fri, 26 Sep 2025 08:36:38 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:36:38,485 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:38,485 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,485 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:38,485 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,485 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8jv7-9ozo7d-tjz', 'HostId': 'mg0l8jv7-9ozo7d-tjz', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jv7-9ozo7d-tjz', 'x-amz-id-2': 'mg0l8jv7-9ozo7d-tjz', 'etag': '"95b5ba5463e2d866e2a930c33e038077"', 'date': 'Fri, 26 Sep 2025 08:36:38 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"95b5ba5463e2d866e2a930c33e038077"'} gunicorn-registry stdout | 2025-09-26 08:36:38,485 [258] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f', 'UploadId': '68d65096d73ec60008f9337b', 'MultipartUpload': {'Parts': [{'ETag': '"95b5ba5463e2d866e2a930c33e038077"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:36:38,485 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,485 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,485 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,485 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,485 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,485 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,486 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,486 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:38,486 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:38,486 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:38,486 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:38,486 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,486 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,486 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,486 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f', 'query_string': {'uploadId': '68d65096d73ec60008f9337b'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"95b5ba5463e2d866e2a930c33e038077"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f?uploadId=68d65096d73ec60008f9337b', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f', 'UploadId': '68d65096d73ec60008f9337b', 'MultipartUpload': {'Parts': [{'ETag': '"95b5ba5463e2d866e2a930c33e038077"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:38,486 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,486 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,486 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,486 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,487 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:38,487 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f gunicorn-registry stdout | uploadId=68d65096d73ec60008f9337b gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:59153d10a02e93558ca1fc29b216e3be824788f8f248d25d5e72dddfa7453cc5 gunicorn-registry stdout | x-amz-date:20250926T083638Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 59153d10a02e93558ca1fc29b216e3be824788f8f248d25d5e72dddfa7453cc5 gunicorn-registry stdout | 2025-09-26 08:36:38,487 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083638Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 3a71c35d9a20b5467117fdf2c60a4d525fa49f94b442d9a65fbc5d4839c4a10e gunicorn-registry stdout | 2025-09-26 08:36:38,487 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | cded4a11caebddc8b463eabc5fc0ec20e931470bbb64232f11af9b1be667dc23 gunicorn-registry stdout | 2025-09-26 08:36:38,487 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,487 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:38,488 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:38,503 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f?uploadId=68d65096d73ec60008f9337b HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:36:38,503 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jx5-auq3py-558', 'x-amz-id-2': 'mg0l8jx5-auq3py-558', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:36:38 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:38,503 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f"fbce6db1c08805ef6b3a57204c111a92-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f?uploadId=68d65096d73ec60008f9337b' gunicorn-registry stdout | 2025-09-26 08:36:38,503 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,503 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,503 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:38,503 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,503 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8jx5-auq3py-558', 'HostId': 'mg0l8jx5-auq3py-558', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jx5-auq3py-558', 'x-amz-id-2': 'mg0l8jx5-auq3py-558', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:36:38 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f?uploadId=68d65096d73ec60008f9337b', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f', 'ETag': '"fbce6db1c08805ef6b3a57204c111a92-1"'} gunicorn-registry stdout | 2025-09-26 08:36:38,503 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:38,504 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:38,504 [258] [DEBUG] [data.registry_model.blobuploader] Uploaded 593 bytes to blob b5478ff9-d72b-4676-90a2-da61b2d58e5f took 0.10145378112792969 seconds gunicorn-registry stdout | 2025-09-26 08:36:38,505 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['b5478ff9-d72b-4676-90a2-da61b2d58e5f', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,506 [258] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'b5478ff9-d72b-4676-90a2-da61b2d58e5f', 593, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwfSwidmFyaWFudCI6InY2In05ZDZiNmI5Nzg0N2ZjMWE3OTM3YjJlMzc2Yjc1YTcwNDIxZTY3ODEwN2RhYzMiXREAAAAAAAAAABIAAAAAAACw27K8eq/V5TAa+LKwOkilRCDknoXG31hoXQRKkRkqpJRiLg==', 9, '{"chunks": [["uploads/18cd9abb-569c-45a4-9386-da044eecce0f", 0, 593]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 36, 38, 341228), None, None, 14]) gunicorn-registry stdout | 2025-09-26 08:36:38,508 [258] [DEBUG] [app] Ending request: urn:request:f8037cab-2971-4280-b2c8-c48829f27e78 (/v2/testorg/alpine/blobs/uploads/b5478ff9-d72b-4676-90a2-da61b2d58e5f) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:f8037cab-2971-4280-b2c8-c48829f27e78', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/b5478ff9-d72b-4676-90a2-da61b2d58e5f', 'path': '/v2/testorg/alpine/blobs/uploads/b5478ff9-d72b-4676-90a2-da61b2d58e5f', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:38,508 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:38,508 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:38,509 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:38 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/b5478ff9-d72b-4676-90a2-da61b2d58e5f HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:38 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/b5478ff9-d72b-4676-90a2-da61b2d58e5f HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.123 2365 0.122) gunicorn-registry stdout | 2025-09-26 08:36:38,551 [258] [DEBUG] [app] Starting request: urn:request:029ae0e0-637f-4e92-9ac8-caddf45096ce (/v2/testorg/alpine/blobs/uploads/b5478ff9-d72b-4676-90a2-da61b2d58e5f) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:38,551 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'b5478ff9-d72b-4676-90a2-da61b2d58e5f', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:38,551 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:38,551 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:38,552 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:38,552 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:38,552 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:38,552 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:38,552 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:38,553 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,554 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,555 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,556 [258] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,557 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,558 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,559 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,560 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:38,561 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['b5478ff9-d72b-4676-90a2-da61b2d58e5f', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,562 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:38,562 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:38,562 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:38,563 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:38,563 [258] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4c60e1ab-7887-47f5-a5a2-802762c7d85d', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:38,563 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,563 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,563 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,563 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,563 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,563 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,563 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,563 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,563 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:38,563 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:38,563 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:38,563 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:38,563 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,563 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,563 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,564 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/4c60e1ab-7887-47f5-a5a2-802762c7d85d?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4c60e1ab-7887-47f5-a5a2-802762c7d85d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4c60e1ab-7887-47f5-a5a2-802762c7d85d?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4c60e1ab-7887-47f5-a5a2-802762c7d85d', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:38,564 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,564 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,564 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,564 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,564 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:38,564 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4c60e1ab-7887-47f5-a5a2-802762c7d85d gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083638Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:38,564 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083638Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 1645ed468bdaf25b8f4c2af340ed107f0155d0118d41f745bf1c946805b6a49e gunicorn-registry stdout | 2025-09-26 08:36:38,564 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 2d9ea79edb95b0cbaa4ce9cf7372c8300a97132aad1e953db87232597883dc2a gunicorn-registry stdout | 2025-09-26 08:36:38,564 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,564 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:38,564 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:38,571 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4c60e1ab-7887-47f5-a5a2-802762c7d85d?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:38,571 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jza-c4lxr5-18c3', 'x-amz-id-2': 'mg0l8jza-c4lxr5-18c3', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:38 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:38,571 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/4c60e1ab-7887-47f5-a5a2-802762c7d85d68d65096d73ec60008f93381' gunicorn-registry stdout | 2025-09-26 08:36:38,571 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,571 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:38,571 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,571 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8jza-c4lxr5-18c3', 'HostId': 'mg0l8jza-c4lxr5-18c3', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jza-c4lxr5-18c3', 'x-amz-id-2': 'mg0l8jza-c4lxr5-18c3', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:38 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4c60e1ab-7887-47f5-a5a2-802762c7d85d', 'UploadId': '68d65096d73ec60008f93381'} gunicorn-registry stdout | 2025-09-26 08:36:38,571 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:38,572 [258] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4c60e1ab-7887-47f5-a5a2-802762c7d85d', 'UploadId': '68d65096d73ec60008f93381'} gunicorn-registry stdout | 2025-09-26 08:36:38,572 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,572 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,572 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,572 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,572 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,572 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,572 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:38,572 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:38,572 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:38,572 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:38,573 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,573 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,573 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,573 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/4c60e1ab-7887-47f5-a5a2-802762c7d85d', 'query_string': {'uploadId': '68d65096d73ec60008f93381'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4c60e1ab-7887-47f5-a5a2-802762c7d85d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4c60e1ab-7887-47f5-a5a2-802762c7d85d?uploadId=68d65096d73ec60008f93381', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4c60e1ab-7887-47f5-a5a2-802762c7d85d', 'UploadId': '68d65096d73ec60008f93381'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:38,573 [258] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,573 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,573 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,573 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,573 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:38,573 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4c60e1ab-7887-47f5-a5a2-802762c7d85d gunicorn-registry stdout | uploadId=68d65096d73ec60008f93381 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083638Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:38,573 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083638Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 57ca6644b8c2055ed69f964cbc9cc012a2ab7d7dfe756e18de02146ff125aff0 gunicorn-registry stdout | 2025-09-26 08:36:38,573 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 991e0281ca8b5dba8612e2cada48caf0d2352fffc0ae1052a522d2cce20cdbc9 gunicorn-registry stdout | 2025-09-26 08:36:38,573 [258] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,573 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:38,574 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:38,581 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4c60e1ab-7887-47f5-a5a2-802762c7d85d?uploadId=68d65096d73ec60008f93381 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:36:38,581 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jzj-c9vp5f-cl4', 'x-amz-id-2': 'mg0l8jzj-c9vp5f-cl4', 'Date': 'Fri, 26 Sep 2025 08:36:38 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:38,581 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:38,581 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,581 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:38,581 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,581 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8jzj-c9vp5f-cl4', 'HostId': 'mg0l8jzj-c9vp5f-cl4', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jzj-c9vp5f-cl4', 'x-amz-id-2': 'mg0l8jzj-c9vp5f-cl4', 'date': 'Fri, 26 Sep 2025 08:36:38 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:36:38,582 [258] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob b5478ff9-d72b-4676-90a2-da61b2d58e5f took 0.019601821899414062 seconds gunicorn-registry stdout | 2025-09-26 08:36:38,582 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['b5478ff9-d72b-4676-90a2-da61b2d58e5f', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,583 [258] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'b5478ff9-d72b-4676-90a2-da61b2d58e5f', 593, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwfSwidmFyaWFudCI6InY2In05ZDZiNmI5Nzg0N2ZjMWE3OTM3YjJlMzc2Yjc1YTcwNDIxZTY3ODEwN2RhYzMiXREAAAAAAAAAABIAAAAAAACw27K8eq/V5TAa+LKwOkilRCDknoXG31hoXQRKkRkqpJRiLg==', 9, '{"chunks": [["uploads/18cd9abb-569c-45a4-9386-da044eecce0f", 0, 593]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 36, 38, 341228), None, None, 14]) gunicorn-registry stdout | 2025-09-26 08:36:38,585 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:38,585 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:38,585 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:38,585 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:38,585 [258] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5'} gunicorn-registry stdout | 2025-09-26 08:36:38,586 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,586 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,586 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,586 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,586 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,586 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,586 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,586 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:38,586 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:38,586 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:38,586 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:38,586 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,586 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,586 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,586 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:38,586 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,587 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,587 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,587 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,587 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:38,587 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083638Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:38,587 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083638Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 3da29efc070725461d84ca0d560b903cccdaf167eec940145ebddcb6e95f4af0 gunicorn-registry stdout | 2025-09-26 08:36:38,587 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | d23549586d10d9d17fab609660017a3b270ab3da34581fda49c76edc38c72754 gunicorn-registry stdout | 2025-09-26 08:36:38,587 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,587 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:38,587 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:38,592 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:36:38,593 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8jzw-ci4md3-kzj', 'x-amz-id-2': 'mg0l8jzw-ci4md3-kzj', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:38 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:38,593 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:38,593 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,593 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:38,593 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,593 [258] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:36:38,593 [258] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:36:38,593 [258] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5 gunicorn-registry stdout | 2025-09-26 08:36:38,593 [258] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:38,594 [258] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:38,594 [258] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:38,594 [258] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:36:38,594 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,594 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,594 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,594 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,594 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,594 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,594 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,594 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:38,594 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:38,594 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:38,594 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:38,594 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,594 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,594 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,594 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:38,595 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,595 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,595 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,595 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,595 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,595 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:38,595 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083638Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:38,595 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083638Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | b1f010b257487ae47c6185cae395295de85df70bdfdd727d524a1b6a598063c0 gunicorn-registry stdout | 2025-09-26 08:36:38,595 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 16371ba5f3f1db87bf2739d1ac6f210285ca4b56b0ccdba848888d6b61daed56 gunicorn-registry stdout | 2025-09-26 08:36:38,595 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,595 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,595 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:38,595 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:38,596 [258] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | 2025-09-26 08:36:38,629 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:38,629 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8k0x-d43exc-6ke', 'x-amz-id-2': 'mg0l8k0x-d43exc-6ke', 'ETag': '"fbce6db1c08805ef6b3a57204c111a92-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:38 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '593', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:38 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:38,629 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:38,629 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,629 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:38,630 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,630 [258] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:36:38,630 [258] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:38,630 [258] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:38,630 [258] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:38,630 [258] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 'extra_args': {}, 'callbacks': [], 'size': 593} gunicorn-registry stdout | 2025-09-26 08:36:38,630 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,631 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,631 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,631 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,631 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,631 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,631 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,631 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,631 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,631 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,631 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:38,631 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:38,631 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:38,631 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:38,631 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,631 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,631 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,631 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:38,632 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,632 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,632 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,632 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,632 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,632 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:38,632 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18cd9abb-569c-45a4-9386-da044eecce0f gunicorn-registry stdout | x-amz-date:20250926T083638Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:38,632 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083638Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | f2bc19077abdec531d6fee317e634e8c5218924cd2e7fd5f1e046b126017b93b gunicorn-registry stdout | 2025-09-26 08:36:38,632 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 62e0654d435594d2d0126fa00c2f3220327083b39b16ec63867bb3e743f5129e gunicorn-registry stdout | 2025-09-26 08:36:38,632 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,632 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,632 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:38,632 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:38,633 [258] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:38,658 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:36:38,658 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8k16-d8zgnd-dwr', 'x-amz-id-2': 'mg0l8k16-d8zgnd-dwr', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:36:38 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:38,658 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:36:38.000Z"fbce6db1c08805ef6b3a57204c111a92-1"' gunicorn-registry stdout | 2025-09-26 08:36:38,658 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,659 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:38,659 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:38,659 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:38,659 [258] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:38,659 [258] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob b5478ff9-d72b-4676-90a2-da61b2d58e5f with digest sha256:2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5 took 0.0663919448852539 seconds gunicorn-registry stdout | 2025-09-26 08:36:38,660 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['b5478ff9-d72b-4676-90a2-da61b2d58e5f', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,662 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,663 [258] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['570164b8-53bc-42a4-b733-6ed2db166d26', 593, None, True, True, 'sha256:2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5']) gunicorn-registry stdout | 2025-09-26 08:36:38,664 [258] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [15, 9]) gunicorn-registry stdout | 2025-09-26 08:36:38,665 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:38,666 [258] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [2, 15, datetime.datetime(2025, 9, 26, 8, 36, 38, 665810), datetime.datetime(2025, 9, 26, 9, 36, 38, 665791)]) gunicorn-registry stdout | 2025-09-26 08:36:38,666 [258] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [14]) gunicorn-registry stdout | 2025-09-26 08:36:38,669 [258] [DEBUG] [app] Ending request: urn:request:029ae0e0-637f-4e92-9ac8-caddf45096ce (/v2/testorg/alpine/blobs/uploads/b5478ff9-d72b-4676-90a2-da61b2d58e5f) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:029ae0e0-637f-4e92-9ac8-caddf45096ce', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/b5478ff9-d72b-4676-90a2-da61b2d58e5f?digest=sha256:2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 'path': '/v2/testorg/alpine/blobs/uploads/b5478ff9-d72b-4676-90a2-da61b2d58e5f', 'parameters': {'digest': 'sha256:2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:38,669 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:38,669 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:38,670 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:38 +0000] "PUT /v2/testorg/alpine/blobs/uploads/b5478ff9-d72b-4676-90a2-da61b2d58e5f?digest=sha256%3A2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:38 +0000] "PUT /v2/testorg/alpine/blobs/uploads/b5478ff9-d72b-4676-90a2-da61b2d58e5f?digest=sha256%3A2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.119 1849 0.119) gunicorn-web stdout | 2025-09-26 08:36:38,746 [250] [DEBUG] [app] Starting request: urn:request:fb1cd3be-03ee-4e00-adcd-32c70336da93 (/_storage_proxy_auth) {'X-Forwarded-For': '3.131.182.156'} gunicorn-web stdout | 2025-09-26 08:36:38,746 [250] [DEBUG] [storage.downloadproxy] Got token b'eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1Nzk4LCJpYXQiOjE3NTg4NzU3OTgsImV4cCI6MTc1ODg3NjM5OCwic3ViIjoic3RvcmFnZXByb3h5IiwiYWNjZXNzIjpbeyJ0eXBlIjoic3RvcmFnZXByb3h5IiwidXJpIjoicXVheS1kYXRhc3RvcmUtZTI5YzM5OTQtNjJlYi00ZTlmLTk1NTAtYmFhMTFmODc0MDg0L2RhdGFzdG9yYWdlL3JlZ2lzdHJ5L3NoYTI1Ni9jZC9jZDAxZjMwNzE5YWExZTljN2Y5NzQ2ZTU5NDI0Y2Y5NzAyMjc5ZThlZGIyN2RiMmNkNWE0MDI1N2ZkMWRmOTNhP0FXU0FjY2Vzc0tleUlkPUtxVUFodjYwQUdsQUREcTBNY0taJlNpZ25hdHVyZT11WUxIYk4wMlRDSExpdlZXRHN1aDk1RFZ6ZmclM0QmRXhwaXJlcz0xNzU4ODc2Mzk4IiwiaG9zdCI6InMzLm9wZW5zaGlmdC1zdG9yYWdlLnN2Yy5jbHVzdGVyLmxvY2FsOjQ0MyIsInNjaGVtZSI6Imh0dHBzIn1dLCJjb250ZXh0Ijp7fX0.P0447L6zQLsCR3dt9SH9dh5fEwPYAzjYPJubxdbDuBz9vLHX-_qIm9xSu18BCaEQwg1A_ZzuEVqe81vw8NrkXdXnM_432CigAHJcnadYBwmNz92POZV1WoF3xTk9MMyY0qMrzXUqzXw-b3hkcYPKqU1DV1GNJw47kW6dATDxNHssJIL02SUK1ABTe-puWpJZpxf9b6uWydyug8cej-PTUHMhUKmP91_Idi8EcGmtqT_BryGoHQfkG4f3ISa6Y32nw5tK9OvaoiQDzbvzBKFotj2qUEDB33c2wRiAg8t_eq5mTb5HbSoUjqJwaYt6dRyyBmXBb0JuIXeFuz_k9O0IJw' for storage proxy auth request /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5alpDOWpaREF4WmpNd056RTVZV0V4WlRsak4yWTVOelEyWlRVNU5ESTBZMlk1TnpBeU1qYzVaVGhsWkdJeU4yUmlNbU5rTldFME1ESTFOMlprTVdSbU9UTmhQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDExV1V4SVlrNHdNbFJEU0V4cGRsWlhSSE4xYURrMVJGWjZabWNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuUDA0NDdMNnpRTHNDUjNkdDlTSDlkaDVmRXdQWUF6allQSnVieGRiRHVCejl2TEhYLV9xSW05eFN1MThCQ2FFUXdnMUFfWnp1RVZxZTgxdnc4TnJrWGRYbk1fNDMyQ2lnQUhKY25hZFlCd21OejkyUE9aVjFXb0YzeFRrOU1NeVkwcU1yelhVcXpYdy1iM2hrY1lQS3FVMURWMUdOSnc0N2tXNmRBVER4Tkhzc0pJTDAyU1VLMUFCVGUtcHVXcEpacHhmOWI2dVd5ZHl1ZzhjZWotUFRVSE1oVUttUDkxX0lkaThFY0dtdHFUX0JyeUdvSFFma0c0ZjNJU2E2WTMybnc1dEs5T3Zhb2lRRHpidnpCS0ZvdGoycVVFREIzM2Myd1JpQWc4dF9lcTVtVGI1SGJTb1VqcUp3YVl0NmRSeXlCbVhCYjBKdUlYZUZ1el9rOU8wSUp3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cd/cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=uYLHbN02TCHLivVWDsuh95DVzfg%3D&Expires=1758876398 with parts ['ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5alpDOWpaREF4WmpNd056RTVZV0V4WlRsak4yWTVOelEyWlRVNU5ESTBZMlk1TnpBeU1qYzVaVGhsWkdJeU4yUmlNbU5rTldFME1ESTFOMlprTVdSbU9UTmhQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDExV1V4SVlrNHdNbFJEU0V4cGRsWlhSSE4xYURrMVJGWjZabWNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuUDA0NDdMNnpRTHNDUjNkdDlTSDlkaDVmRXdQWUF6allQSnVieGRiRHVCejl2TEhYLV9xSW05eFN1MThCQ2FFUXdnMUFfWnp1RVZxZTgxdnc4TnJrWGRYbk1fNDMyQ2lnQUhKY25hZFlCd21OejkyUE9aVjFXb0YzeFRrOU1NeVkwcU1yelhVcXpYdy1iM2hrY1lQS3FVMURWMUdOSnc0N2tXNmRBVER4Tkhzc0pJTDAyU1VLMUFCVGUtcHVXcEpacHhmOWI2dVd5ZHl1ZzhjZWotUFRVSE1oVUttUDkxX0lkaThFY0dtdHFUX0JyeUdvSFFma0c0ZjNJU2E2WTMybnc1dEs5T3Zhb2lRRHpidnpCS0ZvdGoycVVFREIzM2Myd1JpQWc4dF9lcTVtVGI1SGJTb1VqcUp3YVl0NmRSeXlCbVhCYjBKdUlYZUZ1el9rOU8wSUp3', 'https', 's3.openshift-storage.svc.cluster.local:443', 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cd/cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=uYLHbN02TCHLivVWDsuh95DVzfg%3D&Expires=1758876398'] gunicorn-web stdout | 2025-09-26 08:36:38,748 [250] [DEBUG] [app] Ending request: urn:request:fb1cd3be-03ee-4e00-adcd-32c70336da93 (/_storage_proxy_auth) {'endpoint': '_storage_proxy_auth', 'request_id': 'urn:request:fb1cd3be-03ee-4e00-adcd-32c70336da93', 'remote_addr': '3.131.182.156', 'http_method': 'GET', 'original_url': 'https://web_app_server/_storage_proxy_auth', 'path': '/_storage_proxy_auth', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'Go-http-client/1.1'} dnsmasq stderr | dnsmasq: nameserver 172.30.0.10 refused to do a recursive query gunicorn-web stdout | 2025-09-26 08:36:38,749 [250] [INFO] [gunicorn.access] 3.131.182.156 - - [26/Sep/2025:08:36:38 +0000] "GET /_storage_proxy_auth HTTP/1.0" 200 2 "-" "Go-http-client/1.1" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:38 +0000] "GET /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5alpDOWpaREF4WmpNd056RTVZV0V4WlRsak4yWTVOelEyWlRVNU5ESTBZMlk1TnpBeU1qYzVaVGhsWkdJeU4yUmlNbU5rTldFME1ESTFOMlprTVdSbU9UTmhQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDExV1V4SVlrNHdNbFJEU0V4cGRsWlhSSE4xYURrMVJGWjZabWNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTXprNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuUDA0NDdMNnpRTHNDUjNkdDlTSDlkaDVmRXdQWUF6allQSnVieGRiRHVCejl2TEhYLV9xSW05eFN1MThCQ2FFUXdnMUFfWnp1RVZxZTgxdnc4TnJrWGRYbk1fNDMyQ2lnQUhKY25hZFlCd21OejkyUE9aVjFXb0YzeFRrOU1NeVkwcU1yelhVcXpYdy1iM2hrY1lQS3FVMURWMUdOSnc0N2tXNmRBVER4Tkhzc0pJTDAyU1VLMUFCVGUtcHVXcEpacHhmOWI2dVd5ZHl1ZzhjZWotUFRVSE1oVUttUDkxX0lkaThFY0dtdHFUX0JyeUdvSFFma0c0ZjNJU2E2WTMybnc1dEs5T3Zhb2lRRHpidnpCS0ZvdGoycVVFREIzM2Myd1JpQWc4dF9lcTVtVGI1SGJTb1VqcUp3YVl0NmRSeXlCbVhCYjBKdUlYZUZ1el9rOU8wSUp3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cd/cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=uYLHbN02TCHLivVWDsuh95DVzfg%3D&Expires=1758876398 HTTP/1.1" 200 1702 "-" "Go-http-client/1.1" (0.175 2405 0.170) gunicorn-web stdout | 2025-09-26 08:36:38,934 [250] [DEBUG] [app] Starting request: urn:request:8d3ed471-b0a4-429e-8f46-1deea03e6d4c (/_storage_proxy_auth) {'X-Forwarded-For': '3.131.182.156'} gunicorn-web stdout | 2025-09-26 08:36:38,934 [250] [DEBUG] [storage.downloadproxy] Got token b'eyJhbGciOiJSUzI1NiIsImtpZCI6IkRVcGdyU1J5amsyUElOVXUyY1lSTlZPZGdCNlNjcmFxa3NWdXV6a1MydFUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1Nzk4LCJpYXQiOjE3NTg4NzU3OTgsImV4cCI6MTc1ODg3NjM5OCwic3ViIjoic3RvcmFnZXByb3h5IiwiYWNjZXNzIjpbeyJ0eXBlIjoic3RvcmFnZXByb3h5IiwidXJpIjoicXVheS1kYXRhc3RvcmUtZTI5YzM5OTQtNjJlYi00ZTlmLTk1NTAtYmFhMTFmODc0MDg0L2RhdGFzdG9yYWdlL3JlZ2lzdHJ5L3NoYTI1Ni8zNS8zNTY3NGJjOGQ2MzA4NjM4NjFjZjcxOGI2NWIyNTRhNGIzMzUxZjdkZWM3ODViMzg4N2NhMWViM2ViMWFkMGU5P0FXU0FjY2Vzc0tleUlkPUtxVUFodjYwQUdsQUREcTBNY0taJlNpZ25hdHVyZT1sdWtXRXdOWlI0dDZ5JTJCYko5QmRXR3hsbDdZRSUzRCZFeHBpcmVzPTE3NTg4NzYzOTgiLCJob3N0IjoiczMub3BlbnNoaWZ0LXN0b3JhZ2Uuc3ZjLmNsdXN0ZXIubG9jYWw6NDQzIiwic2NoZW1lIjoiaHR0cHMifV0sImNvbnRleHQiOnt9fQ.VnTBqqUs6Owd7R-iRyKDcMw3ei8KJWu1CKt7RW0MDmrHJBQoDm6VsT3V6Ffz5XT5X2yrrHXC9d-_q1pJnr5gWLNyvMLBrQguf3WFRvjpVUnMXgdnnLcdPBWhO6skxIOdF1OKIV-3VHD4l8LViy4t9HaXE9RR4Rg53wW3kw8izpx4iBcA7llIAlxPNBuELEujT8V7ubwtJ_6ze6ThVQJdyMoSB-ISEH2eKUzEw6HSOewLIJcije9jZ-cPhOQEgR3pL9-VWkMD7Zwsw3bfNmrrdLh6hayu5bFE6IdB3V4hIJLjrF8bbjKdMXFmQXCEtftP4teXVyXQSA-wvobrK0etIA' for storage proxy auth request /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4ek5TOHpOVFkzTkdKak9HUTJNekE0TmpNNE5qRmpaamN4T0dJMk5XSXlOVFJoTkdJek16VXhaamRrWldNM09EVmlNemc0TjJOaE1XVmlNMlZpTVdGa01HVTVQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFzZFd0WFJYZE9XbEkwZERaNUpUSkNZa281UW1SWFIzaHNiRGRaUlNVelJDWkZlSEJwY21WelBURTNOVGc0TnpZek9UZ2lMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuVm5UQnFxVXM2T3dkN1ItaVJ5S0RjTXczZWk4S0pXdTFDS3Q3UlcwTURtckhKQlFvRG02VnNUM1Y2RmZ6NVhUNVgyeXJySFhDOWQtX3ExcEpucjVnV0xOeXZNTEJyUWd1ZjNXRlJ2anBWVW5NWGdkbm5MY2RQQldoTzZza3hJT2RGMU9LSVYtM1ZIRDRsOExWaXk0dDlIYVhFOVJSNFJnNTN3VzNrdzhpenB4NGlCY0E3bGxJQWx4UE5CdUVMRXVqVDhWN3Vid3RKXzZ6ZTZUaFZRSmR5TW9TQi1JU0VIMmVLVXpFdzZIU09ld0xJSmNpamU5alotY1BoT1FFZ1IzcEw5LVZXa01EN1p3c3czYmZObXJyZExoNmhheXU1YkZFNklkQjNWNGhJSkxqckY4YmJqS2RNWEZtUVhDRXRmdFA0dGVYVnlYUVNBLXd2b2JySzBldElB/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=lukWEwNZR4t6y%2BbJ9BdWGxll7YE%3D&Expires=1758876398 with parts ['ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4ek5TOHpOVFkzTkdKak9HUTJNekE0TmpNNE5qRmpaamN4T0dJMk5XSXlOVFJoTkdJek16VXhaamRrWldNM09EVmlNemc0TjJOaE1XVmlNMlZpTVdGa01HVTVQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFzZFd0WFJYZE9XbEkwZERaNUpUSkNZa281UW1SWFIzaHNiRGRaUlNVelJDWkZlSEJwY21WelBURTNOVGc0TnpZek9UZ2lMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuVm5UQnFxVXM2T3dkN1ItaVJ5S0RjTXczZWk4S0pXdTFDS3Q3UlcwTURtckhKQlFvRG02VnNUM1Y2RmZ6NVhUNVgyeXJySFhDOWQtX3ExcEpucjVnV0xOeXZNTEJyUWd1ZjNXRlJ2anBWVW5NWGdkbm5MY2RQQldoTzZza3hJT2RGMU9LSVYtM1ZIRDRsOExWaXk0dDlIYVhFOVJSNFJnNTN3VzNrdzhpenB4NGlCY0E3bGxJQWx4UE5CdUVMRXVqVDhWN3Vid3RKXzZ6ZTZUaFZRSmR5TW9TQi1JU0VIMmVLVXpFdzZIU09ld0xJSmNpamU5alotY1BoT1FFZ1IzcEw5LVZXa01EN1p3c3czYmZObXJyZExoNmhheXU1YkZFNklkQjNWNGhJSkxqckY4YmJqS2RNWEZtUVhDRXRmdFA0dGVYVnlYUVNBLXd2b2JySzBldElB', 'https', 's3.openshift-storage.svc.cluster.local:443', 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=lukWEwNZR4t6y%2BbJ9BdWGxll7YE%3D&Expires=1758876398'] gunicorn-web stdout | 2025-09-26 08:36:38,935 [250] [DEBUG] [app] Ending request: urn:request:8d3ed471-b0a4-429e-8f46-1deea03e6d4c (/_storage_proxy_auth) {'endpoint': '_storage_proxy_auth', 'request_id': 'urn:request:8d3ed471-b0a4-429e-8f46-1deea03e6d4c', 'remote_addr': '3.131.182.156', 'http_method': 'GET', 'original_url': 'https://web_app_server/_storage_proxy_auth', 'path': '/_storage_proxy_auth', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'Go-http-client/1.1'} gunicorn-web stdout | 2025-09-26 08:36:38,936 [250] [INFO] [gunicorn.access] 3.131.182.156 - - [26/Sep/2025:08:36:38 +0000] "GET /_storage_proxy_auth HTTP/1.0" 200 2 "-" "Go-http-client/1.1" gunicorn-registry stdout | 2025-09-26 08:36:39,255 [251] [DEBUG] [app] Starting request: urn:request:fc1ef0b0-2514-4a10-ba07-04fbc574634d (/v2/testorg/alpine/blobs/sha256:611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:39,255 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:39,255 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:39,255 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:39,256 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:39,256 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:39,256 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:39,256 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:39,256 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:39,257 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:39,259 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:39,260 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:39,260 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735_2 gunicorn-registry stdout | 2025-09-26 08:36:39,260 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:39,261 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:39,262 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:39,263 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:39,264 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:39,266 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:39,267 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735_2: None gunicorn-registry stdout | 2025-09-26 08:36:39,267 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735_2: None gunicorn-registry stdout | 2025-09-26 08:36:39,267 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:39,267 [251] [DEBUG] [app] Ending request: urn:request:fc1ef0b0-2514-4a10-ba07-04fbc574634d (/v2/testorg/alpine/blobs/sha256:611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:fc1ef0b0-2514-4a10-ba07-04fbc574634d', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735', 'path': '/v2/testorg/alpine/blobs/sha256:611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:39,267 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:39,267 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:39,267 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:39 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:39 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.013 1714 0.013) securityscanningnotificationworker stdout | 2025-09-26 08:36:39,587 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:36:39,587 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:10.584403+00:00 (in 30.996653 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:36:39,587 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:41:39 GMT)" (scheduled at 2025-09-26 08:36:39.586780+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:36:39,588 [82] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [False, datetime.datetime(2025, 9, 26, 8, 36, 39, 587963), 'secscanv4/%']) securityscanningnotificationworker stdout | 2025-09-26 08:36:39,594 [82] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 36, 39, 587963), True, datetime.datetime(2025, 9, 26, 8, 36, 39, 587963), 0, 'secscanv4/%']) securityscanningnotificationworker stdout | 2025-09-26 08:36:39,595 [82] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) AND NOT ("t1"."queue_name" IN (SELECT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s)))))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 36, 39, 587963), True, datetime.datetime(2025, 9, 26, 8, 36, 39, 587963), 0, 'secscanv4/%', False, datetime.datetime(2025, 9, 26, 8, 36, 39, 587963), 'secscanv4/%']) securityscanningnotificationworker stdout | 2025-09-26 08:36:39,596 [82] [DEBUG] [data.database] Disconnecting from database. securityscanningnotificationworker stdout | 2025-09-26 08:36:39,597 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:41:39 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:36:39,609 [258] [DEBUG] [app] Starting request: urn:request:26a1541e-db4e-4547-a5c8-9d6751a63a1d (/v2/testorg/alpine/blobs/uploads/40680dd4-f803-4db7-bc44-bfcb19245afd) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:39,609 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '40680dd4-f803-4db7-bc44-bfcb19245afd', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:39,609 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:39,609 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:39,610 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:39,610 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:39,610 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:39,610 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:39,610 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:39,611 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:39,612 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:39,613 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:39,614 [258] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:39,615 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:39,616 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:39,617 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:39,618 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:39,619 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['40680dd4-f803-4db7-bc44-bfcb19245afd', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:39,619 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:39,620 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:39,620 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:39,620 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:39,621 [258] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:39,621 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,621 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,621 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,621 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,621 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:39,621 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,621 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,621 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:39,621 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:39,621 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:39,621 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:39,621 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:39,621 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,621 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,621 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,622 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:39,622 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:39,622 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:39,622 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,622 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,622 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:39,622 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083639Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:39,622 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083639Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 09fb9060c09edf0e736359adb92cc174b25407cb25f5669b926cc29236a451f9 gunicorn-registry stdout | 2025-09-26 08:36:39,622 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 0317520827ba4e779cc7a7fc2d69a0fbd40d030c2751b23c9eaf9b357f4ae864 gunicorn-registry stdout | 2025-09-26 08:36:39,622 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,622 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:39,622 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-web stdout | 2025-09-26 08:36:39,652 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:36:39,659 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:36:39,700 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:36:39,710 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:36:39,715 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gunicorn-registry stdout | 2025-09-26 08:36:39,774 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:39,774 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8kw9-f830ch-p2y', 'x-amz-id-2': 'mg0l8kw9-f830ch-p2y', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:39 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:39,774 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d68d65097d73ec60008f93384' gunicorn-registry stdout | 2025-09-26 08:36:39,774 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,774 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:39,774 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:39,774 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8kw9-f830ch-p2y', 'HostId': 'mg0l8kw9-f830ch-p2y', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8kw9-f830ch-p2y', 'x-amz-id-2': 'mg0l8kw9-f830ch-p2y', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:39 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d', 'UploadId': '68d65097d73ec60008f93384'} gunicorn-registry stdout | 2025-09-26 08:36:39,774 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:39,775 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:36:39,775 [258] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:36:39,775 [258] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d', 'UploadId': '68d65097d73ec60008f93384', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b88299e0>, 'ContentLength': 5504} gunicorn-registry stdout | 2025-09-26 08:36:39,775 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,776 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,776 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,776 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,776 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:39,776 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,776 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,776 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:39,776 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:39,776 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:39,776 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:39,776 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:39,776 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,776 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,776 [258] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:36:39,776 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,776 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,776 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d', 'query_string': {'uploadId': '68d65097d73ec60008f93384', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '5504', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'dORDcDS7OgiW2HdkUETckQ==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b88299e0>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d?uploadId=68d65097d73ec60008f93384&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d', 'UploadId': '68d65097d73ec60008f93384', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b88299e0>, 'ContentLength': 5504}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:39,776 [258] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:39,776 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:39,776 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,777 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,777 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:39,777 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d gunicorn-registry stdout | partNumber=1&uploadId=68d65097d73ec60008f93384 gunicorn-registry stdout | content-length:5504 gunicorn-registry stdout | content-md5:dORDcDS7OgiW2HdkUETckQ== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083639Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:39,777 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083639Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 1630b8c9b5810ed2eb4fe89656bcac2471762757f0e94f91d42f575b0043a07a gunicorn-registry stdout | 2025-09-26 08:36:39,777 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 8196ab884f0934af74a83bb9368f80bf9d7733a680ee5cdbc17b39ada799c818 gunicorn-registry stdout | 2025-09-26 08:36:39,777 [258] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,778 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:39,778 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:39,779 [258] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:39,780 [258] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gcworker stdout | 2025-09-26 08:36:39,805 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:39 +0000] "GET /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU56azRMQ0pwWVhRaU9qRTNOVGc0TnpVM09UZ3NJbVY0Y0NJNk1UYzFPRGczTmpNNU9Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4ek5TOHpOVFkzTkdKak9HUTJNekE0TmpNNE5qRmpaamN4T0dJMk5XSXlOVFJoTkdJek16VXhaamRrWldNM09EVmlNemc0TjJOaE1XVmlNMlZpTVdGa01HVTVQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFzZFd0WFJYZE9XbEkwZERaNUpUSkNZa281UW1SWFIzaHNiRGRaUlNVelJDWkZlSEJwY21WelBURTNOVGc0TnpZek9UZ2lMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuVm5UQnFxVXM2T3dkN1ItaVJ5S0RjTXczZWk4S0pXdTFDS3Q3UlcwTURtckhKQlFvRG02VnNUM1Y2RmZ6NVhUNVgyeXJySFhDOWQtX3ExcEpucjVnV0xOeXZNTEJyUWd1ZjNXRlJ2anBWVW5NWGdkbm5MY2RQQldoTzZza3hJT2RGMU9LSVYtM1ZIRDRsOExWaXk0dDlIYVhFOVJSNFJnNTN3VzNrdzhpenB4NGlCY0E3bGxJQWx4UE5CdUVMRXVqVDhWN3Vid3RKXzZ6ZTZUaFZRSmR5TW9TQi1JU0VIMmVLVXpFdzZIU09ld0xJSmNpamU5alotY1BoT1FFZ1IzcEw5LVZXa01EN1p3c3czYmZObXJyZExoNmhheXU1YkZFNklkQjNWNGhJSkxqckY4YmJqS2RNWEZtUVhDRXRmdFA0dGVYVnlYUVNBLXd2b2JySzBldElB/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=lukWEwNZR4t6y%2BbJ9BdWGxll7YE%3D&Expires=1758876398 HTTP/1.1" 200 147 "-" "Go-http-client/1.1" (0.903 2411 0.901) gunicorn-registry stdout | 2025-09-26 08:36:39,879 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d?uploadId=68d65097d73ec60008f93384&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:39,879 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8kwz-fnrf43-2dz', 'x-amz-id-2': 'mg0l8kwz-fnrf43-2dz', 'ETag': '"74e4437034bb3a0896d877645044dc91"', 'Date': 'Fri, 26 Sep 2025 08:36:39 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:36:39,879 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:39,879 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,879 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:39,879 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:39,879 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8kwz-fnrf43-2dz', 'HostId': 'mg0l8kwz-fnrf43-2dz', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8kwz-fnrf43-2dz', 'x-amz-id-2': 'mg0l8kwz-fnrf43-2dz', 'etag': '"74e4437034bb3a0896d877645044dc91"', 'date': 'Fri, 26 Sep 2025 08:36:39 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"74e4437034bb3a0896d877645044dc91"'} gunicorn-registry stdout | 2025-09-26 08:36:39,879 [258] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d', 'UploadId': '68d65097d73ec60008f93384', 'MultipartUpload': {'Parts': [{'ETag': '"74e4437034bb3a0896d877645044dc91"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:36:39,879 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,879 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,879 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,879 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:39,879 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,880 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,880 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:39,880 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:39,880 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:39,880 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:39,880 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:39,880 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,880 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,880 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,880 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d', 'query_string': {'uploadId': '68d65097d73ec60008f93384'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"74e4437034bb3a0896d877645044dc91"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d?uploadId=68d65097d73ec60008f93384', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d', 'UploadId': '68d65097d73ec60008f93384', 'MultipartUpload': {'Parts': [{'ETag': '"74e4437034bb3a0896d877645044dc91"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:39,880 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:39,881 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:39,881 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,881 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,881 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:39,881 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d gunicorn-registry stdout | uploadId=68d65097d73ec60008f93384 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:1f4ae5d83d45e0feccc50d04c7bb821c58c0f0d3ecc86a34cbfb6cf57e33e4d4 gunicorn-registry stdout | x-amz-date:20250926T083639Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 1f4ae5d83d45e0feccc50d04c7bb821c58c0f0d3ecc86a34cbfb6cf57e33e4d4 gunicorn-registry stdout | 2025-09-26 08:36:39,881 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083639Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | a053fa640230e060f426cddf8507b5c2cb0d01f4d47685eb7a197a73da22a118 gunicorn-registry stdout | 2025-09-26 08:36:39,881 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | a407f493a1a9b366c554f38b8e6443f07e326c61b337a87fca990f15db89557b gunicorn-registry stdout | 2025-09-26 08:36:39,881 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:39,881 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:39,881 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityscanningnotificationworker stdout | 2025-09-26 08:36:39,992 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} gunicorn-registry stdout | 2025-09-26 08:36:40,141 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d?uploadId=68d65097d73ec60008f93384 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:36:40,141 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8l09-12h6ov-pi7', 'x-amz-id-2': 'mg0l8l09-12h6ov-pi7', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:36:40 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:40,141 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d"01968e4d19351d69b46abb0f49662431-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d?uploadId=68d65097d73ec60008f93384' gunicorn-registry stdout | 2025-09-26 08:36:40,141 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,142 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,142 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:40,142 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:40,142 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8l09-12h6ov-pi7', 'HostId': 'mg0l8l09-12h6ov-pi7', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8l09-12h6ov-pi7', 'x-amz-id-2': 'mg0l8l09-12h6ov-pi7', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:36:40 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d?uploadId=68d65097d73ec60008f93384', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d', 'ETag': '"01968e4d19351d69b46abb0f49662431-1"'} gunicorn-registry stdout | 2025-09-26 08:36:40,142 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:40,143 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:40,143 [258] [DEBUG] [data.registry_model.blobuploader] Uploaded 5504 bytes to blob 40680dd4-f803-4db7-bc44-bfcb19245afd took 0.5236415863037109 seconds gunicorn-registry stdout | 2025-09-26 08:36:40,144 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['40680dd4-f803-4db7-bc44-bfcb19245afd', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:40,145 [258] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, '40680dd4-f803-4db7-bc44-bfcb19245afd', 5504, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwMDkyOX1dXX19LCJodHRwczovL21vYnlwcm9qZWN0Lm9yZy9idWlsZGtpdEB2MSNoZXJtZXRpYyI6dHJ1ZX19fQAAAAAAAAAAAKwAAAAAAAApF/mM14RFTdLGQvodCE6xKiIP/i53Lr8/7hrLYNUHEJRiLg==', 9, '{"chunks": [["uploads/6afcc2a7-5f7a-43f6-a082-7b651d0a529d", 0, 5504]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 36, 39, 562780), None, None, 15]) gunicorn-registry stdout | 2025-09-26 08:36:40,147 [258] [DEBUG] [app] Ending request: urn:request:26a1541e-db4e-4547-a5c8-9d6751a63a1d (/v2/testorg/alpine/blobs/uploads/40680dd4-f803-4db7-bc44-bfcb19245afd) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:26a1541e-db4e-4547-a5c8-9d6751a63a1d', 'remote_addr': '10.129.4.11', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/40680dd4-f803-4db7-bc44-bfcb19245afd', 'path': '/v2/testorg/alpine/blobs/uploads/40680dd4-f803-4db7-bc44-bfcb19245afd', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:40,147 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:40,147 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:40,148 [258] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:40 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/40680dd4-f803-4db7-bc44-bfcb19245afd HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:40 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/40680dd4-f803-4db7-bc44-bfcb19245afd HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.541 7277 0.541) queuecleanupworker stdout | 2025-09-26 08:36:40,205 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} gunicorn-secscan stdout | 2025-09-26 08:36:40,367 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:36:40,374 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} gunicorn-secscan stdout | 2025-09-26 08:36:40,378 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} autopruneworker stdout | 2025-09-26 08:36:40,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:36:40,598 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:10.598100+00:00 (in 29.999576 seconds) autopruneworker stdout | 2025-09-26 08:36:40,598 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:10 GMT)" (scheduled at 2025-09-26 08:36:40.598100+00:00) autopruneworker stdout | 2025-09-26 08:36:40,603 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758872200603, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:36:40,606 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:36:40,606 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:36:40,606 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:10 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:36:40,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:36:40,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:50.692901+00:00 (in 9.999400 seconds) notificationworker stdout | 2025-09-26 08:36:40,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:50 GMT)" (scheduled at 2025-09-26 08:36:40.692901+00:00) notificationworker stdout | 2025-09-26 08:36:40,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:36:40,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 36, 40, 693854), True, datetime.datetime(2025, 9, 26, 8, 36, 40, 693854), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:36:40,700 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:36:40,700 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:36:40,700 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:50 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:36:40,826 [251] [DEBUG] [app] Starting request: urn:request:6b0f3480-b087-4c83-810b-89234a6bb716 (/v2/testorg/alpine/blobs/uploads/cafc9a67-ab2a-414b-b5f8-e426aec32fd5) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:40,826 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'cafc9a67-ab2a-414b-b5f8-e426aec32fd5', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:40,826 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:40,826 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:40,828 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:40,828 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:40,828 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:40,828 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:40,828 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:40,829 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:40,830 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:40,831 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:40,833 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:40,834 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:40,835 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:40,836 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:40,838 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:40,839 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['cafc9a67-ab2a-414b-b5f8-e426aec32fd5', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:40,840 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:40,840 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:40,840 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:40,841 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:40,842 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:40,842 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,842 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,842 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,842 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,842 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:40,842 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,842 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,842 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:40,842 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:40,842 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:40,843 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:40,843 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:40,843 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,843 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,843 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,843 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:40,843 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:40,843 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:40,843 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,843 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,844 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:40,844 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083640Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:40,844 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083640Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 2a6b40ce555462e73ec2b85642300f59f2b0bee8f562b642a041f54bec8d9363 gunicorn-registry stdout | 2025-09-26 08:36:40,844 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | fb0ae081d8ea5631694201eb8bbfa1b67bd783307af83b1c7115bab0749e5440 gunicorn-registry stdout | 2025-09-26 08:36:40,844 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,844 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:40,845 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:40,852 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:40,852 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8lqn-8ieoc-fft', 'x-amz-id-2': 'mg0l8lqn-8ieoc-fft', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:40 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:40,852 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f2415668d65098d73ec60008f9338d' gunicorn-registry stdout | 2025-09-26 08:36:40,852 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,853 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:40,853 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:40,853 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8lqn-8ieoc-fft', 'HostId': 'mg0l8lqn-8ieoc-fft', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8lqn-8ieoc-fft', 'x-amz-id-2': 'mg0l8lqn-8ieoc-fft', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:40 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156', 'UploadId': '68d65098d73ec60008f9338d'} gunicorn-registry stdout | 2025-09-26 08:36:40,853 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:40,854 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:36:40,854 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:36:40,854 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156', 'UploadId': '68d65098d73ec60008f9338d', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89a79c0>, 'ContentLength': 167} gunicorn-registry stdout | 2025-09-26 08:36:40,854 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,854 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,854 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,855 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,855 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:40,855 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,855 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,855 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:40,855 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:40,855 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:40,855 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:40,855 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:40,855 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,855 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,855 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:36:40,856 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,856 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,856 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156', 'query_string': {'uploadId': '68d65098d73ec60008f9338d', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '167', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': '9V2c8n94U/+DN4KR7+zsCw==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b89a79c0>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156?uploadId=68d65098d73ec60008f9338d&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156', 'UploadId': '68d65098d73ec60008f9338d', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89a79c0>, 'ContentLength': 167}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:40,856 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:40,856 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:40,856 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,856 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,856 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:40,856 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156 gunicorn-registry stdout | partNumber=1&uploadId=68d65098d73ec60008f9338d gunicorn-registry stdout | content-length:167 gunicorn-registry stdout | content-md5:9V2c8n94U/+DN4KR7+zsCw== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083640Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:40,856 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083640Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 6e8199eb8d0321c790eb7f5da2cd0c08377b05b1c9055cbacdbafc8eba809e42 gunicorn-registry stdout | 2025-09-26 08:36:40,856 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 6c98266b781a564c239ca5a3fddb6979986a2ee1b4ece40b083bea90606bd4e5 gunicorn-registry stdout | 2025-09-26 08:36:40,857 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,857 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:40,857 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:40,858 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:40,859 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:36:40,943 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156?uploadId=68d65098d73ec60008f9338d&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:40,944 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8lqy-fk1oe-dfc', 'x-amz-id-2': 'mg0l8lqy-fk1oe-dfc', 'ETag': '"f55d9cf27f7853ff83378291efecec0b"', 'Date': 'Fri, 26 Sep 2025 08:36:40 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:36:40,944 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:40,944 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,944 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:40,944 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:40,944 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8lqy-fk1oe-dfc', 'HostId': 'mg0l8lqy-fk1oe-dfc', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8lqy-fk1oe-dfc', 'x-amz-id-2': 'mg0l8lqy-fk1oe-dfc', 'etag': '"f55d9cf27f7853ff83378291efecec0b"', 'date': 'Fri, 26 Sep 2025 08:36:40 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"f55d9cf27f7853ff83378291efecec0b"'} gunicorn-registry stdout | 2025-09-26 08:36:40,945 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156', 'UploadId': '68d65098d73ec60008f9338d', 'MultipartUpload': {'Parts': [{'ETag': '"f55d9cf27f7853ff83378291efecec0b"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:36:40,945 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,945 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,945 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,945 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:40,945 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,945 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,945 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:40,945 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:40,945 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:40,945 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:40,945 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:40,946 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,946 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,946 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,946 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156', 'query_string': {'uploadId': '68d65098d73ec60008f9338d'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"f55d9cf27f7853ff83378291efecec0b"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156?uploadId=68d65098d73ec60008f9338d', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156', 'UploadId': '68d65098d73ec60008f9338d', 'MultipartUpload': {'Parts': [{'ETag': '"f55d9cf27f7853ff83378291efecec0b"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:40,946 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:40,946 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:40,946 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,946 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,947 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:40,947 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156 gunicorn-registry stdout | uploadId=68d65098d73ec60008f9338d gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:b361815d5f4d3f35f91c068a2336582324c379d1e411b9a80929068344248e0b gunicorn-registry stdout | x-amz-date:20250926T083640Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | b361815d5f4d3f35f91c068a2336582324c379d1e411b9a80929068344248e0b gunicorn-registry stdout | 2025-09-26 08:36:40,947 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083640Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 3ae3abf93250aef78209b4ea1269773206ad2a83cfa7dd2f5ba0385a12e0eb3e gunicorn-registry stdout | 2025-09-26 08:36:40,947 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | b7fe942745cc6128793fab13eb6f1baa4e57d34e79f1fcb9e980e46a1c1b2cb7 gunicorn-registry stdout | 2025-09-26 08:36:40,947 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,947 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:40,947 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:40,964 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156?uploadId=68d65098d73ec60008f9338d HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:36:40,964 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8lth-1x9o8u-bmq', 'x-amz-id-2': 'mg0l8lth-1x9o8u-bmq', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:36:40 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:40,964 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156"a9818db4e7d1861b8e5bdda91b9febaf-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156?uploadId=68d65098d73ec60008f9338d' gunicorn-registry stdout | 2025-09-26 08:36:40,965 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,965 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:40,965 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:40,965 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:40,965 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8lth-1x9o8u-bmq', 'HostId': 'mg0l8lth-1x9o8u-bmq', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8lth-1x9o8u-bmq', 'x-amz-id-2': 'mg0l8lth-1x9o8u-bmq', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:36:40 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156?uploadId=68d65098d73ec60008f9338d', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156', 'ETag': '"a9818db4e7d1861b8e5bdda91b9febaf-1"'} gunicorn-registry stdout | 2025-09-26 08:36:40,965 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:40,966 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:40,966 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 167 bytes to blob cafc9a67-ab2a-414b-b5f8-e426aec32fd5 took 0.12615156173706055 seconds gunicorn-registry stdout | 2025-09-26 08:36:40,967 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['cafc9a67-ab2a-414b-b5f8-e426aec32fd5', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:40,969 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'cafc9a67-ab2a-414b-b5f8-e426aec32fd5', 167, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwNWVmOTc5ZmQzMmQ2ZGE4MGJkNGYxYzI5YTQyYTM5ZGQ3MzUiXX19MTQ5NTVlNzM0ZWU0YjZkZjJkNzBlNTBlYScAAAAAAAAAAAQAAAAAAAAnlK94/mjsyFhSwwQOXF1wlhZrCBUqrwMjutbz92TMOZRiLg==', 9, '{"chunks": [["uploads/4a13497e-c092-4fe7-b781-f56163f24156", 0, 167]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 36, 40, 780726), None, None, 16]) gunicorn-registry stdout | 2025-09-26 08:36:40,971 [251] [DEBUG] [app] Ending request: urn:request:6b0f3480-b087-4c83-810b-89234a6bb716 (/v2/testorg/alpine/blobs/uploads/cafc9a67-ab2a-414b-b5f8-e426aec32fd5) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:6b0f3480-b087-4c83-810b-89234a6bb716', 'remote_addr': '10.129.4.11', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/cafc9a67-ab2a-414b-b5f8-e426aec32fd5', 'path': '/v2/testorg/alpine/blobs/uploads/cafc9a67-ab2a-414b-b5f8-e426aec32fd5', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:40,972 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:40,972 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:40,972 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:40 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/cafc9a67-ab2a-414b-b5f8-e426aec32fd5 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:40 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/cafc9a67-ab2a-414b-b5f8-e426aec32fd5 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.148 1939 0.147) gunicorn-registry stdout | 2025-09-26 08:36:41,012 [251] [DEBUG] [app] Starting request: urn:request:46690412-fe44-42b3-82bb-b2b2fd0ff964 (/v2/testorg/alpine/blobs/uploads/cafc9a67-ab2a-414b-b5f8-e426aec32fd5) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:41,012 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'cafc9a67-ab2a-414b-b5f8-e426aec32fd5', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:41,012 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:41,012 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:41,013 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:41,014 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:41,014 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:41,014 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:41,014 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:41,015 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,017 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,018 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,019 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,021 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,022 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,023 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,024 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:41,025 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['cafc9a67-ab2a-414b-b5f8-e426aec32fd5', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,026 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:41,026 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:41,026 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:41,027 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:41,027 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d66cb8a8-abbe-43c6-8d9b-5277e732cb0c', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:41,027 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,027 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,027 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,027 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,027 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,027 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,027 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler chunkcleanupworker stdout | 2025-09-26 08:36:41,027 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} gunicorn-registry stdout | 2025-09-26 08:36:41,027 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,028 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:41,028 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:41,028 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:41,028 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:41,028 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,028 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,028 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,028 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/d66cb8a8-abbe-43c6-8d9b-5277e732cb0c?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d66cb8a8-abbe-43c6-8d9b-5277e732cb0c', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d66cb8a8-abbe-43c6-8d9b-5277e732cb0c?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d66cb8a8-abbe-43c6-8d9b-5277e732cb0c', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:41,028 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,028 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,028 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,028 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,028 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:41,029 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d66cb8a8-abbe-43c6-8d9b-5277e732cb0c gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083641Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:41,029 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083641Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 83b911d2249be3e67644d24934352fff6fa0840d30ffd40c37d363c0e846d731 gunicorn-registry stdout | 2025-09-26 08:36:41,029 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 40930f28663ba1e2f20406b1196de12061a44612deb37379c3035d0accddd1e2 gunicorn-registry stdout | 2025-09-26 08:36:41,029 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,029 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:41,029 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:41,036 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d66cb8a8-abbe-43c6-8d9b-5277e732cb0c?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:41,036 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8lvr-3a0ag3-15fv', 'x-amz-id-2': 'mg0l8lvr-3a0ag3-15fv', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:41 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:41,036 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/d66cb8a8-abbe-43c6-8d9b-5277e732cb0c68d65099d73ec60008f93393' gunicorn-registry stdout | 2025-09-26 08:36:41,036 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,036 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:41,036 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,037 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8lvr-3a0ag3-15fv', 'HostId': 'mg0l8lvr-3a0ag3-15fv', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8lvr-3a0ag3-15fv', 'x-amz-id-2': 'mg0l8lvr-3a0ag3-15fv', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:41 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d66cb8a8-abbe-43c6-8d9b-5277e732cb0c', 'UploadId': '68d65099d73ec60008f93393'} gunicorn-registry stdout | 2025-09-26 08:36:41,037 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:41,037 [251] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d66cb8a8-abbe-43c6-8d9b-5277e732cb0c', 'UploadId': '68d65099d73ec60008f93393'} gunicorn-registry stdout | 2025-09-26 08:36:41,037 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,037 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,037 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,037 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,037 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,037 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,037 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:41,037 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:41,037 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:41,037 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:41,038 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,038 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,038 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,038 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/d66cb8a8-abbe-43c6-8d9b-5277e732cb0c', 'query_string': {'uploadId': '68d65099d73ec60008f93393'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d66cb8a8-abbe-43c6-8d9b-5277e732cb0c', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d66cb8a8-abbe-43c6-8d9b-5277e732cb0c?uploadId=68d65099d73ec60008f93393', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d66cb8a8-abbe-43c6-8d9b-5277e732cb0c', 'UploadId': '68d65099d73ec60008f93393'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:41,038 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,038 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,038 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,038 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,038 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:41,038 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d66cb8a8-abbe-43c6-8d9b-5277e732cb0c gunicorn-registry stdout | uploadId=68d65099d73ec60008f93393 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083641Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:41,038 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083641Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | b3586f0e4a55990d7f2359277b01ae4dae305b719b9fcfc61419bd5234c70a03 gunicorn-registry stdout | 2025-09-26 08:36:41,038 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | fd159e86bb85b85382af382f866a8f861638f9b1c001caffbabbd88d9a1ba0a1 gunicorn-registry stdout | 2025-09-26 08:36:41,038 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,039 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:41,039 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:41,046 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d66cb8a8-abbe-43c6-8d9b-5277e732cb0c?uploadId=68d65099d73ec60008f93393 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:36:41,046 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8lw0-3ffgcy-9if', 'x-amz-id-2': 'mg0l8lw0-3ffgcy-9if', 'Date': 'Fri, 26 Sep 2025 08:36:41 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:41,046 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:41,047 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,047 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:41,047 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,047 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8lw0-3ffgcy-9if', 'HostId': 'mg0l8lw0-3ffgcy-9if', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8lw0-3ffgcy-9if', 'x-amz-id-2': 'mg0l8lw0-3ffgcy-9if', 'date': 'Fri, 26 Sep 2025 08:36:41 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:36:41,047 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob cafc9a67-ab2a-414b-b5f8-e426aec32fd5 took 0.020496606826782227 seconds gunicorn-registry stdout | 2025-09-26 08:36:41,047 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['cafc9a67-ab2a-414b-b5f8-e426aec32fd5', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,048 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'cafc9a67-ab2a-414b-b5f8-e426aec32fd5', 167, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwNWVmOTc5ZmQzMmQ2ZGE4MGJkNGYxYzI5YTQyYTM5ZGQ3MzUiXX19MTQ5NTVlNzM0ZWU0YjZkZjJkNzBlNTBlYScAAAAAAAAAAAQAAAAAAAAnlK94/mjsyFhSwwQOXF1wlhZrCBUqrwMjutbz92TMOZRiLg==', 9, '{"chunks": [["uploads/4a13497e-c092-4fe7-b781-f56163f24156", 0, 167]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 36, 40, 780726), None, None, 16]) gunicorn-registry stdout | 2025-09-26 08:36:41,050 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:41,050 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:41,050 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:41,051 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:41,052 [251] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9'} gunicorn-registry stdout | 2025-09-26 08:36:41,052 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,052 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,052 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,052 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,052 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,052 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,052 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,052 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:41,052 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:41,052 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:41,052 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:41,052 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,052 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,052 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,052 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:41,052 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,052 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,052 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,053 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,053 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:41,053 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083641Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:41,053 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083641Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | dfc70e55317aee09b46721dd6ad9352418d94f18c884fc5d9e5ea1fb0d32cbfa gunicorn-registry stdout | 2025-09-26 08:36:41,053 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | b49b957b4dd3b278b343ff4a6e04182cfd39f093662e325f019fafa4eb9672a7 gunicorn-registry stdout | 2025-09-26 08:36:41,053 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,053 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:41,053 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:41,059 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:36:41,059 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8lwf-3obsu5-11ap', 'x-amz-id-2': 'mg0l8lwf-3obsu5-11ap', 'Content-Type': 'application/xml', 'Content-Length': '339', 'Date': 'Fri, 26 Sep 2025 08:36:41 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:41,059 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:41,059 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,059 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:41,059 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,059 [251] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:36:41,059 [251] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:36:41,059 [251] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9 gunicorn-registry stdout | 2025-09-26 08:36:41,059 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:41,060 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:41,060 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:41,060 [251] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:36:41,060 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,060 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,060 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,060 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,060 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,060 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,060 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,060 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:41,060 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:41,060 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:41,060 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:41,060 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,060 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,060 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,060 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:41,061 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,061 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,061 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,061 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,061 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,061 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:41,061 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083641Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:41,061 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083641Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | f8fe216f987768aef51f6c7c74371fb00085269d67bacc94a2cd74743066b91e gunicorn-registry stdout | 2025-09-26 08:36:41,061 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | dbfff8bedab86d021f73412aa1b5ad4a48182c4221fbbd9ecdebe5a33d89b92b gunicorn-registry stdout | 2025-09-26 08:36:41,061 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,061 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,061 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:41,061 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:41,065 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:41,066 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8lwm-3swudm-18ap', 'x-amz-id-2': 'mg0l8lwm-3swudm-18ap', 'ETag': '"a9818db4e7d1861b8e5bdda91b9febaf-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:40 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '167', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:41 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:41,066 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:41,067 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,067 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:41,067 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,067 [251] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:36:41,067 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:41,067 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:41,067 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:41,067 [251] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'extra_args': {}, 'callbacks': [], 'size': 167} gunicorn-registry stdout | 2025-09-26 08:36:41,067 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,067 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,067 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,067 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,067 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,067 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,068 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,068 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,068 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,068 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,068 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:41,068 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:41,068 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:41,068 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:41,068 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,068 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,068 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,068 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:41,068 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,068 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,068 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,068 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,068 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,068 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:41,069 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a13497e-c092-4fe7-b781-f56163f24156 gunicorn-registry stdout | x-amz-date:20250926T083641Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:41,069 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083641Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 7bd366a435fb7f065047ad819600e2c96e37d28e0271ad321a235b067ff70952 gunicorn-registry stdout | 2025-09-26 08:36:41,069 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 6d2a9fa5857c20a4a8ab8de5699214bc5c416f7ca072ab0ca64696be97edf253 gunicorn-registry stdout | 2025-09-26 08:36:41,069 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,069 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,069 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:41,069 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:41,069 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:41,096 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:36:41,096 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8lwu-3xnq62-18f', 'x-amz-id-2': 'mg0l8lwu-3xnq62-18f', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:36:41 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:41,096 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:36:41.000Z"a9818db4e7d1861b8e5bdda91b9febaf-1"' gunicorn-registry stdout | 2025-09-26 08:36:41,096 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,096 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,096 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:41,096 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,096 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:41,097 [251] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob cafc9a67-ab2a-414b-b5f8-e426aec32fd5 with digest sha256:54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9 took 0.03770327568054199 seconds gunicorn-registry stdout | 2025-09-26 08:36:41,097 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['cafc9a67-ab2a-414b-b5f8-e426aec32fd5', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,098 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,099 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['5fa09ad8-4d79-43e5-afae-741bb0754a48', 167, None, True, True, 'sha256:54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9']) gunicorn-registry stdout | 2025-09-26 08:36:41,100 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [17, 9]) gunicorn-registry stdout | 2025-09-26 08:36:41,102 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,102 [251] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [2, 17, datetime.datetime(2025, 9, 26, 8, 36, 41, 102540), datetime.datetime(2025, 9, 26, 9, 36, 41, 102526)]) gunicorn-registry stdout | 2025-09-26 08:36:41,103 [251] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [16]) gunicorn-registry stdout | 2025-09-26 08:36:41,105 [251] [DEBUG] [app] Ending request: urn:request:46690412-fe44-42b3-82bb-b2b2fd0ff964 (/v2/testorg/alpine/blobs/uploads/cafc9a67-ab2a-414b-b5f8-e426aec32fd5) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:46690412-fe44-42b3-82bb-b2b2fd0ff964', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/cafc9a67-ab2a-414b-b5f8-e426aec32fd5?digest=sha256:54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'path': '/v2/testorg/alpine/blobs/uploads/cafc9a67-ab2a-414b-b5f8-e426aec32fd5', 'parameters': {'digest': 'sha256:54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:41,105 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:41,105 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:41,105 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:41 +0000] "PUT /v2/testorg/alpine/blobs/uploads/cafc9a67-ab2a-414b-b5f8-e426aec32fd5?digest=sha256%3A54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:41 +0000] "PUT /v2/testorg/alpine/blobs/uploads/cafc9a67-ab2a-414b-b5f8-e426aec32fd5?digest=sha256%3A54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.094 1849 0.094) gunicorn-registry stdout | 2025-09-26 08:36:41,162 [251] [DEBUG] [app] Starting request: urn:request:9f2254c2-c371-41ea-95ca-e9f42edb8c18 (/v2/testorg/alpine/manifests/sha256:1475ea648c2027063f90bc98072ee2197ceec56e17de472f7f9777b8944e9c38) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:41,162 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'manifest_ref': 'sha256:1475ea648c2027063f90bc98072ee2197ceec56e17de472f7f9777b8944e9c38', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:41,162 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:41,162 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:41,163 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:41,163 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:41,163 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:41,163 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:41,163 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:41,166 [251] [DEBUG] [data.cache.cache_key] Loading repository lookup from cache_key: repository_lookup_testorg_alpine gunicorn-registry stdout | 2025-09-26 08:36:41,166 [251] [DEBUG] [data.cache.impl] Checking cache for key repository_lookup_testorg_alpine gunicorn-registry stdout | 2025-09-26 08:36:41,166 [251] [DEBUG] [data.cache.impl] Found result in cache for key repository_lookup_testorg_alpine: {'id': 2, 'visibility': {'id': 2, 'name': 'private'}, 'kind': {'id': 1, 'name': 'image'}, 'state': 0, 'namespace_user': {'stripe_id': None}} gunicorn-registry stdout | 2025-09-26 08:36:41,167 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:1475ea648c2027063f90bc98072ee2197ceec56e17de472f7f9777b8944e9c38', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,169 [251] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL (SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "uploadedblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1")', [2, 'sha256:54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 1, 2, 'sha256:611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735', 1]) gunicorn-registry stdout | 2025-09-26 08:36:41,170 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."digest" = %s) AND ("t1"."repository_id" = %s)) LIMIT %s OFFSET %s', ['sha256:1475ea648c2027063f90bc98072ee2197ceec56e17de472f7f9777b8944e9c38', 2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,171 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "mediatype" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:41,173 [251] [DEBUG] [peewee] ('INSERT INTO "manifest" ("repository_id", "digest", "media_type_id", "manifest_bytes", "config_media_type", "layers_compressed_size", "subject", "subject_backfilled", "artifact_type", "artifact_type_backfilled") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifest"."id"', [2, 'sha256:1475ea648c2027063f90bc98072ee2197ceec56e17de472f7f9777b8944e9c38', 18, '{\n "schemaVersion": 2,\n "mediaType": "application/vnd.oci.image.manifest.v1+json",\n "config": {\n "mediaType": "application/vnd.oci.image.config.v1+json",\n "digest": "sha256:54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9",\n "size": 167\n },\n "layers": [\n {\n "mediaType": "application/vnd.in-toto+json",\n "digest": "sha256:611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735",\n "size": 5504,\n "annotations": {\n "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2"\n }\n }\n ]\n}', 'application/vnd.oci.image.config.v1+json', 5504, None, True, None, True]) gunicorn-registry stdout | 2025-09-26 08:36:41,174 [251] [DEBUG] [peewee] ('INSERT INTO "manifestblob" ("repository_id", "manifest_id", "blob_id") VALUES (%s, %s, %s), (%s, %s, %s) RETURNING "manifestblob"."id"', [2, 5, 16, 2, 5, 17]) gunicorn-registry stdout | 2025-09-26 08:36:41,175 [251] [DEBUG] [peewee] ('SELECT "t1"."namespace_user_id" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,175 [251] [DEBUG] [peewee] ('SELECT 1 FROM "user" AS "t1" WHERE ((("t1"."id" = %s) AND "t1"."enabled") AND NOT "t1"."robot") LIMIT %s', [3, 1]) gunicorn-registry stdout | 2025-09-26 08:36:41,176 [251] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [3, 17, 5, 1]) gunicorn-registry stdout | 2025-09-26 08:36:41,177 [251] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [3, 16, 5, 1]) gunicorn-registry stdout | 2025-09-26 08:36:41,177 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,178 [251] [INFO] [data.model.quota] updating namespace size for manifest 5 in namespace 3, QuotaOperation.ADD 5671 gunicorn-registry stdout | 2025-09-26 08:36:41,178 [251] [DEBUG] [peewee] ('UPDATE "quotanamespacesize" SET "size_bytes" = ("quotanamespacesize"."size_bytes" + %s) WHERE ("quotanamespacesize"."namespace_user_id" = %s)', [5671, 3]) gunicorn-registry stdout | 2025-09-26 08:36:41,178 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotarepositorysize" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,179 [251] [INFO] [data.model.quota] updating repository size for manifest 5 in repository 2, QuotaOperation.ADD 5671 gunicorn-registry stdout | 2025-09-26 08:36:41,179 [251] [DEBUG] [peewee] ('UPDATE "quotarepositorysize" SET "size_bytes" = ("quotarepositorysize"."size_bytes" + %s) WHERE ("quotarepositorysize"."repository_id" = %s)', [5671, 2]) gunicorn-registry stdout | 2025-09-26 08:36:41,180 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [5, None, 1758879401179, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,182 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "tagkind" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:41,182 [251] [DEBUG] [peewee] ('INSERT INTO "tag" ("name", "repository_id", "manifest_id", "lifetime_start_ms", "lifetime_end_ms", "immutable", "hidden", "reversion", "tag_kind_id") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "tag"."id"', ['$temp-fcf55675-e68c-430b-b7fb-efdc77f5d238', 2, 5, 1758875801179, 1758879401179, False, True, False, 1]) gunicorn-registry stdout | 2025-09-26 08:36:41,184 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,185 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['5fa09ad8-4d79-43e5-afae-741bb0754a48']) gunicorn-registry stdout | 2025-09-26 08:36:41,186 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:41,187 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:41,188 [251] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9'} gunicorn-registry stdout | 2025-09-26 08:36:41,188 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,188 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,188 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,188 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,188 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,188 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,188 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,188 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:41,188 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:41,188 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:41,189 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:41,189 [251] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,189 [251] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,189 [251] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,189 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:41,189 [251] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,189 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,189 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,190 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,190 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:41,190 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083641Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:41,190 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083641Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 079d3b0f7e1f9698bfad9f2c5da0fd18f02ce1b4c1d4ec539bdd9c44566560e4 gunicorn-registry stdout | 2025-09-26 08:36:41,190 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | fc77c3b9b95cc8ad0957b22e62ad26f903d2b009b9df90ef5bbd962643aa9c61 gunicorn-registry stdout | 2025-09-26 08:36:41,190 [251] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,190 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:41,191 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:41,256 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9 HTTP/1.1" 200 167 gunicorn-registry stdout | 2025-09-26 08:36:41,256 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8m08-5xzp2f-19zk', 'x-amz-id-2': 'mg0l8m08-5xzp2f-19zk', 'ETag': '"a9818db4e7d1861b8e5bdda91b9febaf-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:41 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '167', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:41 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:41,256 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:36:41,257 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:41,257 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:41,257 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:41,257 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8m08-5xzp2f-19zk', 'HostId': 'mg0l8m08-5xzp2f-19zk', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8m08-5xzp2f-19zk', 'x-amz-id-2': 'mg0l8m08-5xzp2f-19zk', 'etag': '"a9818db4e7d1861b8e5bdda91b9febaf-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:41 GMT', 'content-type': 'application/octet-stream', 'content-length': '167', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:36:41 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 41, tzinfo=tzutc()), 'ContentLength': 167, 'ETag': '"a9818db4e7d1861b8e5bdda91b9febaf-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:36:41,259 [251] [DEBUG] [app] Ending request: urn:request:9f2254c2-c371-41ea-95ca-e9f42edb8c18 (/v2/testorg/alpine/manifests/sha256:1475ea648c2027063f90bc98072ee2197ceec56e17de472f7f9777b8944e9c38) {'endpoint': 'v2.write_manifest_by_digest', 'request_id': 'urn:request:9f2254c2-c371-41ea-95ca-e9f42edb8c18', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/manifests/sha256:1475ea648c2027063f90bc98072ee2197ceec56e17de472f7f9777b8944e9c38', 'path': '/v2/testorg/alpine/manifests/sha256:1475ea648c2027063f90bc98072ee2197ceec56e17de472f7f9777b8944e9c38', 'parameters': {}, 'json_body': {'schemaVersion': 2, 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'config': {'mediaType': 'application/vnd.oci.image.config.v1+json', 'digest': 'sha256:54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'size': 167}, 'layers': [{'mediaType': 'application/vnd.in-toto+json', 'digest': 'sha256:611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735', 'size': 5504, 'annotations': {'in-toto.io/predicate-type': 'https://slsa.dev/provenance/v0.2'}}]}, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:41,260 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:41,260 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:41,260 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:41 +0000] "PUT /v2/testorg/alpine/manifests/sha256:1475ea648c2027063f90bc98072ee2197ceec56e17de472f7f9777b8944e9c38 HTTP/1.1" 201 2 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:41 +0000] "PUT /v2/testorg/alpine/manifests/sha256:1475ea648c2027063f90bc98072ee2197ceec56e17de472f7f9777b8944e9c38 HTTP/1.1" 201 2 "-" "skopeo/1.14.5" (0.099 2385 0.099) securityworker stdout | 2025-09-26 08:36:41,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:36:41,685 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:36:41 GMT)" (scheduled at 2025-09-26 08:36:41.684816+00:00) securityworker stdout | 2025-09-26 08:36:41,686 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:36:41,686 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:36:41,686 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:07.683505+00:00 (in 25.997146 seconds) securityworker stdout | 2025-09-26 08:36:41,687 [86] [DEBUG] [urllib3.connectionpool] Starting new HTTP connection (2): quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 securityworker stdout | 2025-09-26 08:36:41,696 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:36:41,699 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:36:41,704 [86] [DEBUG] [util.migrate.allocator] Total range: 1-6 securityworker stderr | 2025-09-26 08:36:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-6 securityworker stderr | 2025-09-26 08:36:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:36:41,704 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:36:41,704 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-6 securityworker stdout | 2025-09-26 08:36:41,704 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:36:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-6 securityworker stderr | 2025-09-26 08:36:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:36:41,705 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 6]) securityworker stderr | 2025-09-26 08:36:41 [86] [DEBUG] [util.migrate.allocator] Found 5 candidates, processing block start: 1 end: 6 by worker securityworker stdout | 2025-09-26 08:36:41,707 [86] [DEBUG] [util.migrate.allocator] Found 5 candidates, processing block start: 1 end: 6 by worker securityworker stdout | 2025-09-26 08:36:41,707 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) securityworker stdout | 2025-09-26 08:36:41,709 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [1, 'sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 1, 0]) securityworker stdout | 2025-09-26 08:36:41,711 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['86c9f0ff-30c6-4d94-bde8-375b2a721ed8']) securityworker stdout | 2025-09-26 08:36:41,712 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:36:41,712 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:36:41,713 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc'} securityworker stdout | 2025-09-26 08:36:41,713 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,713 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,713 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,713 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,713 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,713 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,713 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,713 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,713 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,713 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,713 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,713 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,713 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,713 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,713 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:36:41,713 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,713 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,713 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,713 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,714 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:36:41,714 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083641Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:36:41,714 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083641Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | 7377c144aa6daaafdfbea1b05d8e554c3a8fd4ac6a423b88edb3f727c54b8b2f securityworker stdout | 2025-09-26 08:36:41,714 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | a7742f23ab4dcc4b559ebbef560f8cb367e47f2f704597363c048c898e602e9a securityworker stdout | 2025-09-26 08:36:41,714 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,714 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:36:41,714 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:36:41,729 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/53/53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc HTTP/1.1" 200 7698 securityworker stdout | 2025-09-26 08:36:41,730 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8mer-elijqe-1857', 'x-amz-id-2': 'mg0l8mer-elijqe-1857', 'ETag': '"7d1bc3fb37637dd0a81dabcf72e9bbfc-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:30 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '7698', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:41 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:36:41,730 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:36:41,730 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,730 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:36:41,730 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,730 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8mer-elijqe-1857', 'HostId': 'mg0l8mer-elijqe-1857', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8mer-elijqe-1857', 'x-amz-id-2': 'mg0l8mer-elijqe-1857', 'etag': '"7d1bc3fb37637dd0a81dabcf72e9bbfc-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:30 GMT', 'content-type': 'application/octet-stream', 'content-length': '7698', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:36:41 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 30, tzinfo=tzutc()), 'ContentLength': 7698, 'ETag': '"7d1bc3fb37637dd0a81dabcf72e9bbfc-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } securityworker stdout | 2025-09-26 08:36:41,732 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4', 1, 0]) securityworker stdout | 2025-09-26 08:36:41,735 [86] [DEBUG] [peewee] ('((SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL ((SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1") UNION ALL (SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "manifestblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q2"))) UNION ALL (((SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q3") UNION ALL (SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "manifestblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q4")) UNION ALL ((SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "manifestblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q5") UNION ALL (SELECT * FROM (SELECT "t7"."id", "t7"."content_checksum", "t7"."image_size", "t7"."uuid", "t7"."cas_path", "t7"."uncompressed_size" FROM "imagestorage" AS "t7" INNER JOIN "manifestblob" AS "t8" ON ("t8"."blob_id" = "t7"."id") WHERE (("t8"."repository_id" = %s) AND ("t7"."content_checksum" = %s)) LIMIT %s) AS "q6")))', [1, 'sha256:a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1', 1, 1, 'sha256:f93b7d3396c22354724b502c69276a730003297e4c24bd6d03fc16b0e50090d3', 1, 1, 'sha256:4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160', 1, 1, 'sha256:53aa81e8adfa939348cd4c846c0ab682b16dc7641714e36bfc57b764f0b947dc', 1, 1, 'sha256:cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a', 1, 1, 'sha256:35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9', 1, 1, 'sha256:b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d', 1]) securityworker stdout | 2025-09-26 08:36:41,739 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['53f7e6a1-c1fa-4b76-a4e8-6dc9e980625a']) securityworker stdout | 2025-09-26 08:36:41,740 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:41,741 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['37644509-1acb-4be7-86bb-9da6c1f66944']) securityworker stdout | 2025-09-26 08:36:41,741 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:41,742 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['67781ee4-5131-487b-87a9-bacb6fd3222b']) securityworker stdout | 2025-09-26 08:36:41,744 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:41,745 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:41,746 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:41,747 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['7a6c7f25-8d9f-4aed-8ba3-600ed78926b1']) securityworker stdout | 2025-09-26 08:36:41,748 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['42b92989-996c-4697-bd9f-edbb4e9f8130']) securityworker stdout | 2025-09-26 08:36:41,749 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:41,750 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:41,751 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['f785ed9b-6c3a-470f-b73e-d4a661cdad38']) securityworker stdout | 2025-09-26 08:36:41,752 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:41,753 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:41,754 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:41,755 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s)', [1]) securityworker stdout | 2025-09-26 08:36:41,756 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) securityworker stdout | 2025-09-26 08:36:41,758 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) securityworker stdout | 2025-09-26 08:36:41,759 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Indexing manifest [1] 2/quayrepo@sha256:cfdb19c8fdc4b5ff3f5ed39b6958b1ac6aab0d41a39b00b15eafa9f3dab4e405 securityworker stdout | 2025-09-26 08:36:41,759 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,759 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,759 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,759 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,759 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,759 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,759 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,759 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,759 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,759 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,759 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,759 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,759 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,759 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,759 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,759 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/f9/f93b7d3396c22354724b502c69276a730003297e4c24bd6d03fc16b0e50090d3 securityworker stdout | 2025-09-26 08:36:41,765 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5bU9TOW1PVE5pTjJRek16azJZekl5TXpVME56STBZalV3TW1NMk9USTNObUUzTXpBd01ETXlPVGRsTkdNeU5HSmtObVF3TTJaak1UWmlNR1UxTURBNU1HUXpQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFtU0RkeFpFZHBlbWhhTmtadVFWbFBZbEpPZG1vNWN6SjJTM2NsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRBeElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAucXVaWldRdGFMTHFEbXN5Zkszd1BWQzhIM3RpUlZVTGlSTVJ4UllFendRdnVndVY3bUJPamhNU1BzNmowQi1JVjgwZmJ0c3QzZ0g1eThSSmMyMy1YNVkyeWF4YkZGX2NTdEJNSS0yeEZFcnhpMXJwRTRHYjN1a2xMbWtOUUpobjRXUk4zVlpyZUZYblZwODkySHYxOW5tN0VPM3Q1S21GRTJqUzlCMHVreWhTakRXNUJKME41ZDRGRC1WamVhdjJnZHdKeUhsS1dPTWN1OHhBVjlGeTZiX3A5d0NqMkZiOUVabHZ6R0w2STNZQWNuM29LX3c5OTJyRFFqVjllbjByMG1rN3Q4R3lDZ29hcmxxb3k1MjR5Z3BqNzVjV1NSeURZRVFpSXIwYV9sbDlKWWZoTXlCeTFCOTdFZ2syS0k4MUJHa2JZSi1vOE9BelpPcWxnYXlIeFF3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/f9/f93b7d3396c22354724b502c69276a730003297e4c24bd6d03fc16b0e50090d3?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=fH7qdGizhZ6FnAYObRNvj9s2vKw%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,765 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,765 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,765 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,765 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,765 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,765 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,765 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,765 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,766 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,766 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,766 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,766 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,766 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,766 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,766 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,766 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/f9/f93b7d3396c22354724b502c69276a730003297e4c24bd6d03fc16b0e50090d3 securityworker stdout | 2025-09-26 08:36:41,771 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5bU9TOW1PVE5pTjJRek16azJZekl5TXpVME56STBZalV3TW1NMk9USTNObUUzTXpBd01ETXlPVGRsTkdNeU5HSmtObVF3TTJaak1UWmlNR1UxTURBNU1HUXpQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFtU0RkeFpFZHBlbWhhTmtadVFWbFBZbEpPZG1vNWN6SjJTM2NsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRBeElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAucXVaWldRdGFMTHFEbXN5Zkszd1BWQzhIM3RpUlZVTGlSTVJ4UllFendRdnVndVY3bUJPamhNU1BzNmowQi1JVjgwZmJ0c3QzZ0g1eThSSmMyMy1YNVkyeWF4YkZGX2NTdEJNSS0yeEZFcnhpMXJwRTRHYjN1a2xMbWtOUUpobjRXUk4zVlpyZUZYblZwODkySHYxOW5tN0VPM3Q1S21GRTJqUzlCMHVreWhTakRXNUJKME41ZDRGRC1WamVhdjJnZHdKeUhsS1dPTWN1OHhBVjlGeTZiX3A5d0NqMkZiOUVabHZ6R0w2STNZQWNuM29LX3c5OTJyRFFqVjllbjByMG1rN3Q4R3lDZ29hcmxxb3k1MjR5Z3BqNzVjV1NSeURZRVFpSXIwYV9sbDlKWWZoTXlCeTFCOTdFZ2syS0k4MUJHa2JZSi1vOE9BelpPcWxnYXlIeFF3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/f9/f93b7d3396c22354724b502c69276a730003297e4c24bd6d03fc16b0e50090d3?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=fH7qdGizhZ6FnAYObRNvj9s2vKw%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,771 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,771 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,771 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,771 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,771 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,771 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,771 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,771 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,772 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,772 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,772 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,772 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,772 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,772 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,772 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,772 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:41,778 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVWs5eFVUSTNNU1V5UW5sRWIweERNbkJSYjBOa1lUSXlVVXRwWXlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlBLT1U2ZzBLT2dVb0VaOEJ3Q3ItejJGWmxONTg1bXlMNXoxUVZaVTVpXzZjWHJUQWdEOGZ4dFlBRUxGa1hpaFJvSGliUk8xQzBhU2ZKSWZzLU5SMkhDUU1lVU1jcDR4d3Vnb0VWUW1QV1IySFJ6MGVPSEhjTmZ1SWVGbFoyZjlKTE1tb3Z6TXlfY0p5SnUyNlFCb3R2ZXliQ2tGT3FUX09lbnNGSDZ4SHc2RkZaXzZyLUJ6RUVCeUhlT0Q4VVhpSi0xOFJrNVJVanRqTlpmQ3J4ejhOOVZkVHVpWFBONFpWUVhFNkpoQ3FzTjdLYmcwTWMxV1MzaVpqdS1KVXcwaERReE1Td1pmZ0FhejBhZThFdmpHQU5Ya0RseUZGMmtmMC1GdXVhd0NENFN4Um1aekM1YkNUUndITzYwWmc0dktoN1pIQ3NqanRVRS1XMEhuVERFZk93/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QROqQ271%2ByDoLC2pQoCda22QKic%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,778 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,778 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,778 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,778 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,778 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,779 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,779 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,779 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,779 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,779 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,779 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,779 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,779 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,779 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,779 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,779 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:41,785 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVWs5eFVUSTNNU1V5UW5sRWIweERNbkJSYjBOa1lUSXlVVXRwWXlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlBLT1U2ZzBLT2dVb0VaOEJ3Q3ItejJGWmxONTg1bXlMNXoxUVZaVTVpXzZjWHJUQWdEOGZ4dFlBRUxGa1hpaFJvSGliUk8xQzBhU2ZKSWZzLU5SMkhDUU1lVU1jcDR4d3Vnb0VWUW1QV1IySFJ6MGVPSEhjTmZ1SWVGbFoyZjlKTE1tb3Z6TXlfY0p5SnUyNlFCb3R2ZXliQ2tGT3FUX09lbnNGSDZ4SHc2RkZaXzZyLUJ6RUVCeUhlT0Q4VVhpSi0xOFJrNVJVanRqTlpmQ3J4ejhOOVZkVHVpWFBONFpWUVhFNkpoQ3FzTjdLYmcwTWMxV1MzaVpqdS1KVXcwaERReE1Td1pmZ0FhejBhZThFdmpHQU5Ya0RseUZGMmtmMC1GdXVhd0NENFN4Um1aekM1YkNUUndITzYwWmc0dktoN1pIQ3NqanRVRS1XMEhuVERFZk93/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QROqQ271%2ByDoLC2pQoCda22QKic%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,785 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,785 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,785 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,785 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,785 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,785 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,785 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,785 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,785 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,785 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,785 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,786 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,786 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,786 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,786 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,786 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cd/cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a securityworker stdout | 2025-09-26 08:36:41,791 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5alpDOWpaREF4WmpNd056RTVZV0V4WlRsak4yWTVOelEyWlRVNU5ESTBZMlk1TnpBeU1qYzVaVGhsWkdJeU4yUmlNbU5rTldFME1ESTFOMlprTVdSbU9UTmhQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFsUjB3Mk1FRjNWV2hVZG1aekpUSkdXblUzV1ROSk1UTlVKVEpHWVdwdkpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qUXdNU0lzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5IdFhRckZJNjJjdEgxMTdmUGpvanpNU2JadWR2ZnE5dWtuN0VpWFZQcTRuRUVqTVFYc0FnVHVKSGJoQ2lyeVppTTVzcG5WX2twZHkxZ2czdnVEakNMQXZpUG1wOXM2WVNucVJwdkVyUV9vR0pDVzlNMGJFakZLSnJRTTRkWWFzTzNZQmZWaWVXU2d3ZlJsUUd6aDRPZkRUbDlCSHlWV3pFVHYwZXFZczhsX3BJSF80VzdqNTl6cEpaUy1NY1dZOTJ0c2lfclVhTVZPa3FfQkdPNnRHOFo4OWxfYzhpWUJpV0NMYlV6elpuU1RqdU5CNUVwR2pmYnNwcWVvZk1oaVR1ZVRreW9GeU1DMDFseGk2QlRTN1JJcWRqdVBSWHF0WVpyX0xGQ3oxelN0S1Q5SGE2R29wVWtlU2FnYzVTd1VRem80b1g1dHEyTC05cG82MXBDVmVLTmc=/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cd/cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=eGL60AwUhTvfs%2FZu7Y3I13T%2Fajo%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,791 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,792 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,792 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,792 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,792 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,792 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,792 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,792 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,792 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,792 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,792 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,792 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,792 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,792 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,792 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,792 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cd/cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a securityworker stdout | 2025-09-26 08:36:41,798 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5alpDOWpaREF4WmpNd056RTVZV0V4WlRsak4yWTVOelEyWlRVNU5ESTBZMlk1TnpBeU1qYzVaVGhsWkdJeU4yUmlNbU5rTldFME1ESTFOMlprTVdSbU9UTmhQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFsUjB3Mk1FRjNWV2hVZG1aekpUSkdXblUzV1ROSk1UTlVKVEpHWVdwdkpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qUXdNU0lzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5IdFhRckZJNjJjdEgxMTdmUGpvanpNU2JadWR2ZnE5dWtuN0VpWFZQcTRuRUVqTVFYc0FnVHVKSGJoQ2lyeVppTTVzcG5WX2twZHkxZ2czdnVEakNMQXZpUG1wOXM2WVNucVJwdkVyUV9vR0pDVzlNMGJFakZLSnJRTTRkWWFzTzNZQmZWaWVXU2d3ZlJsUUd6aDRPZkRUbDlCSHlWV3pFVHYwZXFZczhsX3BJSF80VzdqNTl6cEpaUy1NY1dZOTJ0c2lfclVhTVZPa3FfQkdPNnRHOFo4OWxfYzhpWUJpV0NMYlV6elpuU1RqdU5CNUVwR2pmYnNwcWVvZk1oaVR1ZVRreW9GeU1DMDFseGk2QlRTN1JJcWRqdVBSWHF0WVpyX0xGQ3oxelN0S1Q5SGE2R29wVWtlU2FnYzVTd1VRem80b1g1dHEyTC05cG82MXBDVmVLTmc=/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cd/cd01f30719aa1e9c7f9746e59424cf9702279e8edb27db2cd5a40257fd1df93a?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=eGL60AwUhTvfs%2FZu7Y3I13T%2Fajo%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,798 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,798 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,798 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,798 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,798 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,798 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,798 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,799 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,799 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,799 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,799 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,799 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,799 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,799 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,799 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,799 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:41,805 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVWs5eFVUSTNNU1V5UW5sRWIweERNbkJSYjBOa1lUSXlVVXRwWXlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlBLT1U2ZzBLT2dVb0VaOEJ3Q3ItejJGWmxONTg1bXlMNXoxUVZaVTVpXzZjWHJUQWdEOGZ4dFlBRUxGa1hpaFJvSGliUk8xQzBhU2ZKSWZzLU5SMkhDUU1lVU1jcDR4d3Vnb0VWUW1QV1IySFJ6MGVPSEhjTmZ1SWVGbFoyZjlKTE1tb3Z6TXlfY0p5SnUyNlFCb3R2ZXliQ2tGT3FUX09lbnNGSDZ4SHc2RkZaXzZyLUJ6RUVCeUhlT0Q4VVhpSi0xOFJrNVJVanRqTlpmQ3J4ejhOOVZkVHVpWFBONFpWUVhFNkpoQ3FzTjdLYmcwTWMxV1MzaVpqdS1KVXcwaERReE1Td1pmZ0FhejBhZThFdmpHQU5Ya0RseUZGMmtmMC1GdXVhd0NENFN4Um1aekM1YkNUUndITzYwWmc0dktoN1pIQ3NqanRVRS1XMEhuVERFZk93/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QROqQ271%2ByDoLC2pQoCda22QKic%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,805 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,805 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,805 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,805 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,805 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,805 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,805 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,805 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,805 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,805 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,805 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,805 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,805 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,805 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,805 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,805 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:41,811 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVWs5eFVUSTNNU1V5UW5sRWIweERNbkJSYjBOa1lUSXlVVXRwWXlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlBLT1U2ZzBLT2dVb0VaOEJ3Q3ItejJGWmxONTg1bXlMNXoxUVZaVTVpXzZjWHJUQWdEOGZ4dFlBRUxGa1hpaFJvSGliUk8xQzBhU2ZKSWZzLU5SMkhDUU1lVU1jcDR4d3Vnb0VWUW1QV1IySFJ6MGVPSEhjTmZ1SWVGbFoyZjlKTE1tb3Z6TXlfY0p5SnUyNlFCb3R2ZXliQ2tGT3FUX09lbnNGSDZ4SHc2RkZaXzZyLUJ6RUVCeUhlT0Q4VVhpSi0xOFJrNVJVanRqTlpmQ3J4ejhOOVZkVHVpWFBONFpWUVhFNkpoQ3FzTjdLYmcwTWMxV1MzaVpqdS1KVXcwaERReE1Td1pmZ0FhejBhZThFdmpHQU5Ya0RseUZGMmtmMC1GdXVhd0NENFN4Um1aekM1YkNUUndITzYwWmc0dktoN1pIQ3NqanRVRS1XMEhuVERFZk93/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QROqQ271%2ByDoLC2pQoCda22QKic%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,811 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,811 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,811 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,811 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,811 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,811 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,811 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,811 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,811 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,811 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,811 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,811 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,811 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,812 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,812 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,812 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b4/b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d securityworker stdout | 2025-09-26 08:36:41,817 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aU5DOWlOR1EzWTJFNU5EVTVabUV5TmpneFlUTTBPR1F5TWpsbFlqWmxNRFF4TldFd1lqSTROVEU1TjJNek9XTTROREpsWmpFNE1tVmhZalUzWWpJd01EbGtQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFoVGpCNlMwWjRZazlXV0hWMk9VSlZaSEJWVWlVeVFsbEpZVlZLVVNVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuT1FubjdfdjBFa201M0t0OElzQXI4b29ta1FKSHpDRXRWQnVON2t6MEM3ZUp5UmFncHE2aVE3SDl0LWw0TG13X3JRNm5CRjZ0OXZHSDRhWVA3TmhMS2ktT3R3V1hvV001Y1ZtMFVZajlBMnoyU21Wd3B2ekMzWEdXQVZ0UU1fT09hVGhmME9ESHVxY1BGbHJUTno1cFBlWW9wdGV1N0h0NjNOSm1ZZFcxSjRrLVBvVXdZRk80UTZhTHNjNURWWUpkaC16SlJiXzEwdjZWRHhnaE82TEY4bmQ3aDdLdWVYcWtPU2lubjQ1aUVJN3NuRENjaXBSZmZaOGN2dGU0R3RWM0lSUFZ3YVJuMzc0bXpSSkE5NWZvVzVGRFNUeUdaYnRONHNjeTZmTTA0b2JqdU1CemxRYy1nTW5Ra21lU1NTdEstb0ZTUWo5RU9Bd21DbW5UeDM4WDl3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b4/b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=aN0zKFxbOVXuv9BUdpUR%2BYIaUJQ%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,817 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,817 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,817 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,817 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,817 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,817 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,817 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,818 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,818 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,818 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,818 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,818 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,818 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,818 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,818 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,818 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b4/b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d securityworker stdout | 2025-09-26 08:36:41,824 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aU5DOWlOR1EzWTJFNU5EVTVabUV5TmpneFlUTTBPR1F5TWpsbFlqWmxNRFF4TldFd1lqSTROVEU1TjJNek9XTTROREpsWmpFNE1tVmhZalUzWWpJd01EbGtQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFoVGpCNlMwWjRZazlXV0hWMk9VSlZaSEJWVWlVeVFsbEpZVlZLVVNVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuT1FubjdfdjBFa201M0t0OElzQXI4b29ta1FKSHpDRXRWQnVON2t6MEM3ZUp5UmFncHE2aVE3SDl0LWw0TG13X3JRNm5CRjZ0OXZHSDRhWVA3TmhMS2ktT3R3V1hvV001Y1ZtMFVZajlBMnoyU21Wd3B2ekMzWEdXQVZ0UU1fT09hVGhmME9ESHVxY1BGbHJUTno1cFBlWW9wdGV1N0h0NjNOSm1ZZFcxSjRrLVBvVXdZRk80UTZhTHNjNURWWUpkaC16SlJiXzEwdjZWRHhnaE82TEY4bmQ3aDdLdWVYcWtPU2lubjQ1aUVJN3NuRENjaXBSZmZaOGN2dGU0R3RWM0lSUFZ3YVJuMzc0bXpSSkE5NWZvVzVGRFNUeUdaYnRONHNjeTZmTTA0b2JqdU1CemxRYy1nTW5Ra21lU1NTdEstb0ZTUWo5RU9Bd21DbW5UeDM4WDl3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b4/b4d7ca9459fa2681a348d229eb6e0415a0b285197c39c842ef182eab57b2009d?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=aN0zKFxbOVXuv9BUdpUR%2BYIaUJQ%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,824 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,824 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,824 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,824 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,824 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,824 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,824 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,824 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,824 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,824 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,824 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,824 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,824 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,824 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,824 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,824 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:41,830 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVWs5eFVUSTNNU1V5UW5sRWIweERNbkJSYjBOa1lUSXlVVXRwWXlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlBLT1U2ZzBLT2dVb0VaOEJ3Q3ItejJGWmxONTg1bXlMNXoxUVZaVTVpXzZjWHJUQWdEOGZ4dFlBRUxGa1hpaFJvSGliUk8xQzBhU2ZKSWZzLU5SMkhDUU1lVU1jcDR4d3Vnb0VWUW1QV1IySFJ6MGVPSEhjTmZ1SWVGbFoyZjlKTE1tb3Z6TXlfY0p5SnUyNlFCb3R2ZXliQ2tGT3FUX09lbnNGSDZ4SHc2RkZaXzZyLUJ6RUVCeUhlT0Q4VVhpSi0xOFJrNVJVanRqTlpmQ3J4ejhOOVZkVHVpWFBONFpWUVhFNkpoQ3FzTjdLYmcwTWMxV1MzaVpqdS1KVXcwaERReE1Td1pmZ0FhejBhZThFdmpHQU5Ya0RseUZGMmtmMC1GdXVhd0NENFN4Um1aekM1YkNUUndITzYwWmc0dktoN1pIQ3NqanRVRS1XMEhuVERFZk93/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QROqQ271%2ByDoLC2pQoCda22QKic%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,830 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,830 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,830 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,830 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,830 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,830 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,830 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,831 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,831 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,831 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,831 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,831 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,831 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,831 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,831 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,831 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:41,837 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVWs5eFVUSTNNU1V5UW5sRWIweERNbkJSYjBOa1lUSXlVVXRwWXlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlBLT1U2ZzBLT2dVb0VaOEJ3Q3ItejJGWmxONTg1bXlMNXoxUVZaVTVpXzZjWHJUQWdEOGZ4dFlBRUxGa1hpaFJvSGliUk8xQzBhU2ZKSWZzLU5SMkhDUU1lVU1jcDR4d3Vnb0VWUW1QV1IySFJ6MGVPSEhjTmZ1SWVGbFoyZjlKTE1tb3Z6TXlfY0p5SnUyNlFCb3R2ZXliQ2tGT3FUX09lbnNGSDZ4SHc2RkZaXzZyLUJ6RUVCeUhlT0Q4VVhpSi0xOFJrNVJVanRqTlpmQ3J4ejhOOVZkVHVpWFBONFpWUVhFNkpoQ3FzTjdLYmcwTWMxV1MzaVpqdS1KVXcwaERReE1Td1pmZ0FhejBhZThFdmpHQU5Ya0RseUZGMmtmMC1GdXVhd0NENFN4Um1aekM1YkNUUndITzYwWmc0dktoN1pIQ3NqanRVRS1XMEhuVERFZk93/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QROqQ271%2ByDoLC2pQoCda22QKic%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,837 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,837 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,837 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,837 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,837 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,837 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,837 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,837 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,837 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,837 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,837 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,837 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,837 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,837 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,837 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,837 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:41,843 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVWs5eFVUSTNNU1V5UW5sRWIweERNbkJSYjBOa1lUSXlVVXRwWXlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlBLT1U2ZzBLT2dVb0VaOEJ3Q3ItejJGWmxONTg1bXlMNXoxUVZaVTVpXzZjWHJUQWdEOGZ4dFlBRUxGa1hpaFJvSGliUk8xQzBhU2ZKSWZzLU5SMkhDUU1lVU1jcDR4d3Vnb0VWUW1QV1IySFJ6MGVPSEhjTmZ1SWVGbFoyZjlKTE1tb3Z6TXlfY0p5SnUyNlFCb3R2ZXliQ2tGT3FUX09lbnNGSDZ4SHc2RkZaXzZyLUJ6RUVCeUhlT0Q4VVhpSi0xOFJrNVJVanRqTlpmQ3J4ejhOOVZkVHVpWFBONFpWUVhFNkpoQ3FzTjdLYmcwTWMxV1MzaVpqdS1KVXcwaERReE1Td1pmZ0FhejBhZThFdmpHQU5Ya0RseUZGMmtmMC1GdXVhd0NENFN4Um1aekM1YkNUUndITzYwWmc0dktoN1pIQ3NqanRVRS1XMEhuVERFZk93/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QROqQ271%2ByDoLC2pQoCda22QKic%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,843 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,843 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,843 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,843 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,843 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,843 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,843 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,843 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,843 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,843 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,843 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,843 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,843 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,843 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,843 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,844 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:41,849 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVWs5eFVUSTNNU1V5UW5sRWIweERNbkJSYjBOa1lUSXlVVXRwWXlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlBLT1U2ZzBLT2dVb0VaOEJ3Q3ItejJGWmxONTg1bXlMNXoxUVZaVTVpXzZjWHJUQWdEOGZ4dFlBRUxGa1hpaFJvSGliUk8xQzBhU2ZKSWZzLU5SMkhDUU1lVU1jcDR4d3Vnb0VWUW1QV1IySFJ6MGVPSEhjTmZ1SWVGbFoyZjlKTE1tb3Z6TXlfY0p5SnUyNlFCb3R2ZXliQ2tGT3FUX09lbnNGSDZ4SHc2RkZaXzZyLUJ6RUVCeUhlT0Q4VVhpSi0xOFJrNVJVanRqTlpmQ3J4ejhOOVZkVHVpWFBONFpWUVhFNkpoQ3FzTjdLYmcwTWMxV1MzaVpqdS1KVXcwaERReE1Td1pmZ0FhejBhZThFdmpHQU5Ya0RseUZGMmtmMC1GdXVhd0NENFN4Um1aekM1YkNUUndITzYwWmc0dktoN1pIQ3NqanRVRS1XMEhuVERFZk93/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QROqQ271%2ByDoLC2pQoCda22QKic%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,850 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,850 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,850 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,850 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,850 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,850 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,850 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,850 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,850 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,850 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,850 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,850 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,850 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,850 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,850 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,850 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:41,856 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVWs5eFVUSTNNU1V5UW5sRWIweERNbkJSYjBOa1lUSXlVVXRwWXlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlBLT1U2ZzBLT2dVb0VaOEJ3Q3ItejJGWmxONTg1bXlMNXoxUVZaVTVpXzZjWHJUQWdEOGZ4dFlBRUxGa1hpaFJvSGliUk8xQzBhU2ZKSWZzLU5SMkhDUU1lVU1jcDR4d3Vnb0VWUW1QV1IySFJ6MGVPSEhjTmZ1SWVGbFoyZjlKTE1tb3Z6TXlfY0p5SnUyNlFCb3R2ZXliQ2tGT3FUX09lbnNGSDZ4SHc2RkZaXzZyLUJ6RUVCeUhlT0Q4VVhpSi0xOFJrNVJVanRqTlpmQ3J4ejhOOVZkVHVpWFBONFpWUVhFNkpoQ3FzTjdLYmcwTWMxV1MzaVpqdS1KVXcwaERReE1Td1pmZ0FhejBhZThFdmpHQU5Ya0RseUZGMmtmMC1GdXVhd0NENFN4Um1aekM1YkNUUndITzYwWmc0dktoN1pIQ3NqanRVRS1XMEhuVERFZk93/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QROqQ271%2ByDoLC2pQoCda22QKic%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,856 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,856 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,856 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,856 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,856 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,856 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,856 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,856 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,856 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,856 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,856 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,856 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,856 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,856 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,856 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,856 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:41,862 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVWs5eFVUSTNNU1V5UW5sRWIweERNbkJSYjBOa1lUSXlVVXRwWXlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlBLT1U2ZzBLT2dVb0VaOEJ3Q3ItejJGWmxONTg1bXlMNXoxUVZaVTVpXzZjWHJUQWdEOGZ4dFlBRUxGa1hpaFJvSGliUk8xQzBhU2ZKSWZzLU5SMkhDUU1lVU1jcDR4d3Vnb0VWUW1QV1IySFJ6MGVPSEhjTmZ1SWVGbFoyZjlKTE1tb3Z6TXlfY0p5SnUyNlFCb3R2ZXliQ2tGT3FUX09lbnNGSDZ4SHc2RkZaXzZyLUJ6RUVCeUhlT0Q4VVhpSi0xOFJrNVJVanRqTlpmQ3J4ejhOOVZkVHVpWFBONFpWUVhFNkpoQ3FzTjdLYmcwTWMxV1MzaVpqdS1KVXcwaERReE1Td1pmZ0FhejBhZThFdmpHQU5Ya0RseUZGMmtmMC1GdXVhd0NENFN4Um1aekM1YkNUUndITzYwWmc0dktoN1pIQ3NqanRVRS1XMEhuVERFZk93/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QROqQ271%2ByDoLC2pQoCda22QKic%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,862 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,862 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,862 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,862 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,862 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,862 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,862 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,863 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,863 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,863 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,863 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,863 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,863 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,863 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,863 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,863 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a8/a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1 securityworker stdout | 2025-09-26 08:36:41,868 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE9DOWhPRFUzTm1Vd01tRXhNV0k1T0RRNFl6azNOakUzWWpoak1UQTVaV0ZpT0Rnd1kySXhNemMzTkRFM09HWmpOVE0zT0Rnek56TmlPVFk1WlRNMk5tWXhQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFZYTFsS2NURjJNRWhsVEdNNGRXSmtWVzkxZDFKWVpHSXlOVkVsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRBeElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuQlFhTEpKV0hWaUVhZEdVSDRMMGM4X2lLQkJwWmdiZlU0eFRCWi1CYjh6WTF1NXZDaU1BSXZERUhXY1lKNENROXc3UzlfZm5tLUJ4Y3VzZDF3a21UdjlrZ1RHcUlIY1Z0Zm5OVV9ZUGJFMnNYX0ZGSTRwWlllamQ0emFUb1Ewd3EtRVhJdFZDcEF5STdyLVllNG5TZ281V0hJVG5hbzdvZF9USURwN3JZVnRzQWZMUWdielB4LTE3MmpFNDZuM1R0Ul9WbkJkUnd2RWM4WHh0T0F2WWxGWlpjME5iNlRGSEs5eEFLbG04SmpaSGt1Z2RoQ2Q2aFZNQjZJalJEWVNSVnBhejRQOEZzNUNyZVBidzI1MXZoVFl5WGxCS1VDWGEtVmYxMzluVEMxcmVndmFpY0tkUThWOUlWRUc1WUJvdmNubElDeGZTNEk4MENSUmF2V1VVdzdn/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a8/a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=XkYJq1v0HeLc8ubdUouwRXdb25Q%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,868 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,868 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,868 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,868 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,868 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,868 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,868 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,868 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,868 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,868 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,869 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,869 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,869 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,869 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,869 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,869 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a8/a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1 securityworker stdout | 2025-09-26 08:36:41,875 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE9DOWhPRFUzTm1Vd01tRXhNV0k1T0RRNFl6azNOakUzWWpoak1UQTVaV0ZpT0Rnd1kySXhNemMzTkRFM09HWmpOVE0zT0Rnek56TmlPVFk1WlRNMk5tWXhQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFZYTFsS2NURjJNRWhsVEdNNGRXSmtWVzkxZDFKWVpHSXlOVkVsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRBeElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuQlFhTEpKV0hWaUVhZEdVSDRMMGM4X2lLQkJwWmdiZlU0eFRCWi1CYjh6WTF1NXZDaU1BSXZERUhXY1lKNENROXc3UzlfZm5tLUJ4Y3VzZDF3a21UdjlrZ1RHcUlIY1Z0Zm5OVV9ZUGJFMnNYX0ZGSTRwWlllamQ0emFUb1Ewd3EtRVhJdFZDcEF5STdyLVllNG5TZ281V0hJVG5hbzdvZF9USURwN3JZVnRzQWZMUWdielB4LTE3MmpFNDZuM1R0Ul9WbkJkUnd2RWM4WHh0T0F2WWxGWlpjME5iNlRGSEs5eEFLbG04SmpaSGt1Z2RoQ2Q2aFZNQjZJalJEWVNSVnBhejRQOEZzNUNyZVBidzI1MXZoVFl5WGxCS1VDWGEtVmYxMzluVEMxcmVndmFpY0tkUThWOUlWRUc1WUJvdmNubElDeGZTNEk4MENSUmF2V1VVdzdn/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a8/a8576e02a11b9848c97617b8c109eab880cb13774178fc53788373b969e366f1?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=XkYJq1v0HeLc8ubdUouwRXdb25Q%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,875 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,875 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,875 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,875 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,875 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,875 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,875 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,875 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,875 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,875 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,875 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,875 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,876 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,876 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,876 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,876 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9 securityworker stdout | 2025-09-26 08:36:41,881 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4ek5TOHpOVFkzTkdKak9HUTJNekE0TmpNNE5qRmpaamN4T0dJMk5XSXlOVFJoTkdJek16VXhaamRrWldNM09EVmlNemc0TjJOaE1XVmlNMlZpTVdGa01HVTVQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFYWnpCR1NHOXJSa1E0VlRkb2VDVXlRakZyWWpKSGEybHNKVEpDU1ZadkpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qUXdNU0lzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5jdU9USnZ0QTZVc3Q4VVNqSFZTemk1VzRLT0FuTGhwdlJweU1nQ2diWHg2RzV0a1NMZTEtaFhQZVJ3T3JOVFZHTnZvNU9xVkpVWXNyTm4yU2d0eHZoX0pmM2tYZ3JhODRhckk4Sm9QZjBMWU96b1pnOXlrWDA0Z1ZLcUZfR2padkNOUktNLW5fLWdURDZJUTFyd1lKUVdCT1Fjb2F5R2VTaGtDelpEVXEyajQ4eThsOXo5Q3ZGQXAzX3pKYkUyZ1g5RDdvSFl1VWt6OTloWU9mZ01QOVV1QjV6UEw2NEZocTlQaFJiTm9rb0VaTFNZcFFiR1kzTUFJaHlDWGJ6aUV5dnJHWGJaNkR0MnNxWnlQYlJHXzhNaFp5MEswYm0xTk5XYW5GaXYzUHFacFZ2Q3RHLUdpUUNTUlN6M01KLW14bVdXc2NFZjlJMzBvYlNfQkxmaE45MWc=/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=Wg0FHokFD8U7hx%2B1kb2Gkil%2BIVo%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,881 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,881 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,881 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,881 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,881 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,881 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,881 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,881 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,882 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,882 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,882 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,882 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,882 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,882 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,882 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,882 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9 securityworker stdout | 2025-09-26 08:36:41,887 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4ek5TOHpOVFkzTkdKak9HUTJNekE0TmpNNE5qRmpaamN4T0dJMk5XSXlOVFJoTkdJek16VXhaamRrWldNM09EVmlNemc0TjJOaE1XVmlNMlZpTVdGa01HVTVQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFYWnpCR1NHOXJSa1E0VlRkb2VDVXlRakZyWWpKSGEybHNKVEpDU1ZadkpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qUXdNU0lzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5jdU9USnZ0QTZVc3Q4VVNqSFZTemk1VzRLT0FuTGhwdlJweU1nQ2diWHg2RzV0a1NMZTEtaFhQZVJ3T3JOVFZHTnZvNU9xVkpVWXNyTm4yU2d0eHZoX0pmM2tYZ3JhODRhckk4Sm9QZjBMWU96b1pnOXlrWDA0Z1ZLcUZfR2padkNOUktNLW5fLWdURDZJUTFyd1lKUVdCT1Fjb2F5R2VTaGtDelpEVXEyajQ4eThsOXo5Q3ZGQXAzX3pKYkUyZ1g5RDdvSFl1VWt6OTloWU9mZ01QOVV1QjV6UEw2NEZocTlQaFJiTm9rb0VaTFNZcFFiR1kzTUFJaHlDWGJ6aUV5dnJHWGJaNkR0MnNxWnlQYlJHXzhNaFp5MEswYm0xTk5XYW5GaXYzUHFacFZ2Q3RHLUdpUUNTUlN6M01KLW14bVdXc2NFZjlJMzBvYlNfQkxmaE45MWc=/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/35/35674bc8d630863861cf718b65b254a4b3351f7dec785b3887ca1eb3eb1ad0e9?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=Wg0FHokFD8U7hx%2B1kb2Gkil%2BIVo%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,887 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,887 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,887 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,887 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,887 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,887 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,887 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,887 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,888 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,888 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,888 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,888 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,888 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,888 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,888 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,888 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:41,894 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVWs5eFVUSTNNU1V5UW5sRWIweERNbkJSYjBOa1lUSXlVVXRwWXlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlBLT1U2ZzBLT2dVb0VaOEJ3Q3ItejJGWmxONTg1bXlMNXoxUVZaVTVpXzZjWHJUQWdEOGZ4dFlBRUxGa1hpaFJvSGliUk8xQzBhU2ZKSWZzLU5SMkhDUU1lVU1jcDR4d3Vnb0VWUW1QV1IySFJ6MGVPSEhjTmZ1SWVGbFoyZjlKTE1tb3Z6TXlfY0p5SnUyNlFCb3R2ZXliQ2tGT3FUX09lbnNGSDZ4SHc2RkZaXzZyLUJ6RUVCeUhlT0Q4VVhpSi0xOFJrNVJVanRqTlpmQ3J4ejhOOVZkVHVpWFBONFpWUVhFNkpoQ3FzTjdLYmcwTWMxV1MzaVpqdS1KVXcwaERReE1Td1pmZ0FhejBhZThFdmpHQU5Ya0RseUZGMmtmMC1GdXVhd0NENFN4Um1aekM1YkNUUndITzYwWmc0dktoN1pIQ3NqanRVRS1XMEhuVERFZk93/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QROqQ271%2ByDoLC2pQoCda22QKic%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,894 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,894 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,894 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,894 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,894 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,894 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,895 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,895 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,895 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,895 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,895 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,895 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,895 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,895 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,895 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,895 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:41,900 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVWs5eFVUSTNNU1V5UW5sRWIweERNbkJSYjBOa1lUSXlVVXRwWXlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlBLT1U2ZzBLT2dVb0VaOEJ3Q3ItejJGWmxONTg1bXlMNXoxUVZaVTVpXzZjWHJUQWdEOGZ4dFlBRUxGa1hpaFJvSGliUk8xQzBhU2ZKSWZzLU5SMkhDUU1lVU1jcDR4d3Vnb0VWUW1QV1IySFJ6MGVPSEhjTmZ1SWVGbFoyZjlKTE1tb3Z6TXlfY0p5SnUyNlFCb3R2ZXliQ2tGT3FUX09lbnNGSDZ4SHc2RkZaXzZyLUJ6RUVCeUhlT0Q4VVhpSi0xOFJrNVJVanRqTlpmQ3J4ejhOOVZkVHVpWFBONFpWUVhFNkpoQ3FzTjdLYmcwTWMxV1MzaVpqdS1KVXcwaERReE1Td1pmZ0FhejBhZThFdmpHQU5Ya0RseUZGMmtmMC1GdXVhd0NENFN4Um1aekM1YkNUUndITzYwWmc0dktoN1pIQ3NqanRVRS1XMEhuVERFZk93/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QROqQ271%2ByDoLC2pQoCda22QKic%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,900 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,900 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,900 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,900 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,900 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,900 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,900 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,900 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,901 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,901 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,901 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,901 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,901 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,901 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,901 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,901 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:41,907 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVWs5eFVUSTNNU1V5UW5sRWIweERNbkJSYjBOa1lUSXlVVXRwWXlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlBLT1U2ZzBLT2dVb0VaOEJ3Q3ItejJGWmxONTg1bXlMNXoxUVZaVTVpXzZjWHJUQWdEOGZ4dFlBRUxGa1hpaFJvSGliUk8xQzBhU2ZKSWZzLU5SMkhDUU1lVU1jcDR4d3Vnb0VWUW1QV1IySFJ6MGVPSEhjTmZ1SWVGbFoyZjlKTE1tb3Z6TXlfY0p5SnUyNlFCb3R2ZXliQ2tGT3FUX09lbnNGSDZ4SHc2RkZaXzZyLUJ6RUVCeUhlT0Q4VVhpSi0xOFJrNVJVanRqTlpmQ3J4ejhOOVZkVHVpWFBONFpWUVhFNkpoQ3FzTjdLYmcwTWMxV1MzaVpqdS1KVXcwaERReE1Td1pmZ0FhejBhZThFdmpHQU5Ya0RseUZGMmtmMC1GdXVhd0NENFN4Um1aekM1YkNUUndITzYwWmc0dktoN1pIQ3NqanRVRS1XMEhuVERFZk93/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QROqQ271%2ByDoLC2pQoCda22QKic%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,907 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,907 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,907 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,907 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,907 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,907 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,907 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,908 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,908 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,908 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,908 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,908 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,908 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,908 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,908 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,908 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:41,913 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVWs5eFVUSTNNU1V5UW5sRWIweERNbkJSYjBOa1lUSXlVVXRwWXlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlBLT1U2ZzBLT2dVb0VaOEJ3Q3ItejJGWmxONTg1bXlMNXoxUVZaVTVpXzZjWHJUQWdEOGZ4dFlBRUxGa1hpaFJvSGliUk8xQzBhU2ZKSWZzLU5SMkhDUU1lVU1jcDR4d3Vnb0VWUW1QV1IySFJ6MGVPSEhjTmZ1SWVGbFoyZjlKTE1tb3Z6TXlfY0p5SnUyNlFCb3R2ZXliQ2tGT3FUX09lbnNGSDZ4SHc2RkZaXzZyLUJ6RUVCeUhlT0Q4VVhpSi0xOFJrNVJVanRqTlpmQ3J4ejhOOVZkVHVpWFBONFpWUVhFNkpoQ3FzTjdLYmcwTWMxV1MzaVpqdS1KVXcwaERReE1Td1pmZ0FhejBhZThFdmpHQU5Ya0RseUZGMmtmMC1GdXVhd0NENFN4Um1aekM1YkNUUndITzYwWmc0dktoN1pIQ3NqanRVRS1XMEhuVERFZk93/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QROqQ271%2ByDoLC2pQoCda22QKic%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,913 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,913 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,913 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,913 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,913 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,913 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,913 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,913 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,913 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,913 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,913 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,914 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,914 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,914 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,914 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,914 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4b/4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160 securityworker stdout | 2025-09-26 08:36:41,920 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4MFlpODBZakZoWmpGbE5UQmpaR0kxTTJNM05HWmlObVJpTmpNMk5qbGpPV1ZoTlRNMVpUZzNNREk0WTJVek56ZGlNVFZsTUdGbE5UY3hOekZrT0RWak1UWXdQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFaT0ZCd1RtdHZiVkphTmtGSGFGaHZSbkV5U0dWQlNpVXlRa1ZsWnlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuT0U4eDFPZXhwM210U3BzU0RYMlh3QWJHR2NCVF8tTXBCMTJjZEtocFB1MllhcV9kYjF4WDlyb3RaZE1YYmRGWkUtNnBNTy1jNERaUDFYbWcta2NqMS1jLTVPRlRoRmoxeFJmb3VJOGZHeWlEWDhxRHo5MjBTVnVFYVRESjk1Nkw2Sl9tdU1ZV2UzYmJYVVJSUWI2TGdJZGxPT09JbWtjc0xRYk9UdG1ZNElEeENjQnFXbGNfRnhZWUxIY3ZRU0ZsRFZJYVBnUE5jZEZ5NEdxSGVXMmpKSmYxNUlXem9VZVZtSzFDYVpYSkw5RFUyT0g4LXRTNFBMZl81QkIwekFsRzZ1ZDdrS1dkZVRJUFRlbm5WaXltZUxYQVRoRFdnY2ZnUHZKZnh5WEdLRnh1NmZFYXVwR21EU3RLVzNsdk1xb3c5X05weW15VFFCQ1B0M0NTVnRicll3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4b/4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=Y8PpNkomRZ6AGhXoFq2HeAJ%2BEeg%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,920 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,920 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,920 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,920 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,920 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,920 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,920 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,920 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,920 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,920 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,920 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,921 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,921 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,921 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,921 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,921 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4b/4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160 securityworker stdout | 2025-09-26 08:36:41,926 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4MFlpODBZakZoWmpGbE5UQmpaR0kxTTJNM05HWmlObVJpTmpNMk5qbGpPV1ZoTlRNMVpUZzNNREk0WTJVek56ZGlNVFZsTUdGbE5UY3hOekZrT0RWak1UWXdQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFaT0ZCd1RtdHZiVkphTmtGSGFGaHZSbkV5U0dWQlNpVXlRa1ZsWnlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuT0U4eDFPZXhwM210U3BzU0RYMlh3QWJHR2NCVF8tTXBCMTJjZEtocFB1MllhcV9kYjF4WDlyb3RaZE1YYmRGWkUtNnBNTy1jNERaUDFYbWcta2NqMS1jLTVPRlRoRmoxeFJmb3VJOGZHeWlEWDhxRHo5MjBTVnVFYVRESjk1Nkw2Sl9tdU1ZV2UzYmJYVVJSUWI2TGdJZGxPT09JbWtjc0xRYk9UdG1ZNElEeENjQnFXbGNfRnhZWUxIY3ZRU0ZsRFZJYVBnUE5jZEZ5NEdxSGVXMmpKSmYxNUlXem9VZVZtSzFDYVpYSkw5RFUyT0g4LXRTNFBMZl81QkIwekFsRzZ1ZDdrS1dkZVRJUFRlbm5WaXltZUxYQVRoRFdnY2ZnUHZKZnh5WEdLRnh1NmZFYXVwR21EU3RLVzNsdk1xb3c5X05weW15VFFCQ1B0M0NTVnRicll3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4b/4b1af1e50cdb53c74fb6db63669c9ea535e87028ce377b15e0ae57171d85c160?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=Y8PpNkomRZ6AGhXoFq2HeAJ%2BEeg%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,926 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,927 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,927 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,927 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,927 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,927 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,927 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,927 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,927 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,927 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,927 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,927 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,927 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,927 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,927 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,927 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:41,933 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVWs5eFVUSTNNU1V5UW5sRWIweERNbkJSYjBOa1lUSXlVVXRwWXlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlBLT1U2ZzBLT2dVb0VaOEJ3Q3ItejJGWmxONTg1bXlMNXoxUVZaVTVpXzZjWHJUQWdEOGZ4dFlBRUxGa1hpaFJvSGliUk8xQzBhU2ZKSWZzLU5SMkhDUU1lVU1jcDR4d3Vnb0VWUW1QV1IySFJ6MGVPSEhjTmZ1SWVGbFoyZjlKTE1tb3Z6TXlfY0p5SnUyNlFCb3R2ZXliQ2tGT3FUX09lbnNGSDZ4SHc2RkZaXzZyLUJ6RUVCeUhlT0Q4VVhpSi0xOFJrNVJVanRqTlpmQ3J4ejhOOVZkVHVpWFBONFpWUVhFNkpoQ3FzTjdLYmcwTWMxV1MzaVpqdS1KVXcwaERReE1Td1pmZ0FhejBhZThFdmpHQU5Ya0RseUZGMmtmMC1GdXVhd0NENFN4Um1aekM1YkNUUndITzYwWmc0dktoN1pIQ3NqanRVRS1XMEhuVERFZk93/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QROqQ271%2ByDoLC2pQoCda22QKic%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,933 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,933 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,933 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,933 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,933 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,933 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,933 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,933 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,933 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,933 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,933 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,934 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,934 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,934 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,934 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,934 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:41,939 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVWs5eFVUSTNNU1V5UW5sRWIweERNbkJSYjBOa1lUSXlVVXRwWXlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlBLT1U2ZzBLT2dVb0VaOEJ3Q3ItejJGWmxONTg1bXlMNXoxUVZaVTVpXzZjWHJUQWdEOGZ4dFlBRUxGa1hpaFJvSGliUk8xQzBhU2ZKSWZzLU5SMkhDUU1lVU1jcDR4d3Vnb0VWUW1QV1IySFJ6MGVPSEhjTmZ1SWVGbFoyZjlKTE1tb3Z6TXlfY0p5SnUyNlFCb3R2ZXliQ2tGT3FUX09lbnNGSDZ4SHc2RkZaXzZyLUJ6RUVCeUhlT0Q4VVhpSi0xOFJrNVJVanRqTlpmQ3J4ejhOOVZkVHVpWFBONFpWUVhFNkpoQ3FzTjdLYmcwTWMxV1MzaVpqdS1KVXcwaERReE1Td1pmZ0FhejBhZThFdmpHQU5Ya0RseUZGMmtmMC1GdXVhd0NENFN4Um1aekM1YkNUUndITzYwWmc0dktoN1pIQ3NqanRVRS1XMEhuVERFZk93/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QROqQ271%2ByDoLC2pQoCda22QKic%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,939 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,939 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,939 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,939 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,939 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,939 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,939 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,939 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,939 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,939 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,939 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,939 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,939 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,940 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,940 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,940 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:41,946 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVWs5eFVUSTNNU1V5UW5sRWIweERNbkJSYjBOa1lUSXlVVXRwWXlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlBLT1U2ZzBLT2dVb0VaOEJ3Q3ItejJGWmxONTg1bXlMNXoxUVZaVTVpXzZjWHJUQWdEOGZ4dFlBRUxGa1hpaFJvSGliUk8xQzBhU2ZKSWZzLU5SMkhDUU1lVU1jcDR4d3Vnb0VWUW1QV1IySFJ6MGVPSEhjTmZ1SWVGbFoyZjlKTE1tb3Z6TXlfY0p5SnUyNlFCb3R2ZXliQ2tGT3FUX09lbnNGSDZ4SHc2RkZaXzZyLUJ6RUVCeUhlT0Q4VVhpSi0xOFJrNVJVanRqTlpmQ3J4ejhOOVZkVHVpWFBONFpWUVhFNkpoQ3FzTjdLYmcwTWMxV1MzaVpqdS1KVXcwaERReE1Td1pmZ0FhejBhZThFdmpHQU5Ya0RseUZGMmtmMC1GdXVhd0NENFN4Um1aekM1YkNUUndITzYwWmc0dktoN1pIQ3NqanRVRS1XMEhuVERFZk93/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QROqQ271%2ByDoLC2pQoCda22QKic%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,946 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,946 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,946 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,946 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,946 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,946 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,946 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,946 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,946 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,946 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,946 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,946 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,946 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,946 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,946 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,946 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:41,952 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVWs5eFVUSTNNU1V5UW5sRWIweERNbkJSYjBOa1lUSXlVVXRwWXlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlBLT1U2ZzBLT2dVb0VaOEJ3Q3ItejJGWmxONTg1bXlMNXoxUVZaVTVpXzZjWHJUQWdEOGZ4dFlBRUxGa1hpaFJvSGliUk8xQzBhU2ZKSWZzLU5SMkhDUU1lVU1jcDR4d3Vnb0VWUW1QV1IySFJ6MGVPSEhjTmZ1SWVGbFoyZjlKTE1tb3Z6TXlfY0p5SnUyNlFCb3R2ZXliQ2tGT3FUX09lbnNGSDZ4SHc2RkZaXzZyLUJ6RUVCeUhlT0Q4VVhpSi0xOFJrNVJVanRqTlpmQ3J4ejhOOVZkVHVpWFBONFpWUVhFNkpoQ3FzTjdLYmcwTWMxV1MzaVpqdS1KVXcwaERReE1Td1pmZ0FhejBhZThFdmpHQU5Ya0RseUZGMmtmMC1GdXVhd0NENFN4Um1aekM1YkNUUndITzYwWmc0dktoN1pIQ3NqanRVRS1XMEhuVERFZk93/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QROqQ271%2ByDoLC2pQoCda22QKic%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,952 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,952 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,952 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,952 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,952 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,952 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,952 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,952 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,952 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,953 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,953 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,953 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,953 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,953 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,953 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,953 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:41,959 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVWs5eFVUSTNNU1V5UW5sRWIweERNbkJSYjBOa1lUSXlVVXRwWXlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlBLT1U2ZzBLT2dVb0VaOEJ3Q3ItejJGWmxONTg1bXlMNXoxUVZaVTVpXzZjWHJUQWdEOGZ4dFlBRUxGa1hpaFJvSGliUk8xQzBhU2ZKSWZzLU5SMkhDUU1lVU1jcDR4d3Vnb0VWUW1QV1IySFJ6MGVPSEhjTmZ1SWVGbFoyZjlKTE1tb3Z6TXlfY0p5SnUyNlFCb3R2ZXliQ2tGT3FUX09lbnNGSDZ4SHc2RkZaXzZyLUJ6RUVCeUhlT0Q4VVhpSi0xOFJrNVJVanRqTlpmQ3J4ejhOOVZkVHVpWFBONFpWUVhFNkpoQ3FzTjdLYmcwTWMxV1MzaVpqdS1KVXcwaERReE1Td1pmZ0FhejBhZThFdmpHQU5Ya0RseUZGMmtmMC1GdXVhd0NENFN4Um1aekM1YkNUUndITzYwWmc0dktoN1pIQ3NqanRVRS1XMEhuVERFZk93/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QROqQ271%2ByDoLC2pQoCda22QKic%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,959 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,959 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,959 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,959 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,959 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,959 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:41,959 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:41,959 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:41,959 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:41,959 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:41,959 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:41,959 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:41,959 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:41,959 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:41,959 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:41,959 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876401 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:41,965 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE1ERXNJbVY0Y0NJNk1UYzFPRGczTmpRd01Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVWs5eFVUSTNNU1V5UW5sRWIweERNbkJSYjBOa1lUSXlVVXRwWXlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1ERWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlBLT1U2ZzBLT2dVb0VaOEJ3Q3ItejJGWmxONTg1bXlMNXoxUVZaVTVpXzZjWHJUQWdEOGZ4dFlBRUxGa1hpaFJvSGliUk8xQzBhU2ZKSWZzLU5SMkhDUU1lVU1jcDR4d3Vnb0VWUW1QV1IySFJ6MGVPSEhjTmZ1SWVGbFoyZjlKTE1tb3Z6TXlfY0p5SnUyNlFCb3R2ZXliQ2tGT3FUX09lbnNGSDZ4SHc2RkZaXzZyLUJ6RUVCeUhlT0Q4VVhpSi0xOFJrNVJVanRqTlpmQ3J4ejhOOVZkVHVpWFBONFpWUVhFNkpoQ3FzTjdLYmcwTWMxV1MzaVpqdS1KVXcwaERReE1Td1pmZ0FhejBhZThFdmpHQU5Ya0RseUZGMmtmMC1GdXVhd0NENFN4Um1aekM1YkNUUndITzYwWmc0dktoN1pIQ3NqanRVRS1XMEhuVERFZk93/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QROqQ271%2ByDoLC2pQoCda22QKic%3D&Expires=1758876401 securityworker stdout | 2025-09-26 08:36:41,965 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:36:41,965 [86] [DEBUG] [util.secscan.v4.api] POSTing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_report gunicorn-registry stdout | 2025-09-26 08:36:41,985 [258] [DEBUG] [app] Starting request: urn:request:d22a6dcc-1812-4653-a8fc-6b9a65268b52 (/v2/testorg/alpine/blobs/sha256:22e4d17029cf647ff505d5389be90006efc5ed4178aed9a6d798a2bf7a675fc9) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:41,985 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:22e4d17029cf647ff505d5389be90006efc5ed4178aed9a6d798a2bf7a675fc9', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:41,985 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:41,985 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:41,986 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:41,986 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:41,986 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:41,986 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:41,986 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:41,987 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,989 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,990 [258] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:41,990 [258] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:22e4d17029cf647ff505d5389be90006efc5ed4178aed9a6d798a2bf7a675fc9_2 gunicorn-registry stdout | 2025-09-26 08:36:41,990 [258] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:22e4d17029cf647ff505d5389be90006efc5ed4178aed9a6d798a2bf7a675fc9_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:41,991 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,992 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,993 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,994 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:22e4d17029cf647ff505d5389be90006efc5ed4178aed9a6d798a2bf7a675fc9', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,995 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:22e4d17029cf647ff505d5389be90006efc5ed4178aed9a6d798a2bf7a675fc9', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:41,996 [258] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:22e4d17029cf647ff505d5389be90006efc5ed4178aed9a6d798a2bf7a675fc9_2: None gunicorn-registry stdout | 2025-09-26 08:36:41,996 [258] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:22e4d17029cf647ff505d5389be90006efc5ed4178aed9a6d798a2bf7a675fc9_2: None gunicorn-registry stdout | 2025-09-26 08:36:41,996 [258] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:41,996 [258] [DEBUG] [app] Ending request: urn:request:d22a6dcc-1812-4653-a8fc-6b9a65268b52 (/v2/testorg/alpine/blobs/sha256:22e4d17029cf647ff505d5389be90006efc5ed4178aed9a6d798a2bf7a675fc9) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:d22a6dcc-1812-4653-a8fc-6b9a65268b52', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:22e4d17029cf647ff505d5389be90006efc5ed4178aed9a6d798a2bf7a675fc9', 'path': '/v2/testorg/alpine/blobs/sha256:22e4d17029cf647ff505d5389be90006efc5ed4178aed9a6d798a2bf7a675fc9', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:41,996 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:41,996 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:41 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:22e4d17029cf647ff505d5389be90006efc5ed4178aed9a6d798a2bf7a675fc9 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.013 1714 0.013) gunicorn-registry stdout | 2025-09-26 08:36:41,997 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:41 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:22e4d17029cf647ff505d5389be90006efc5ed4178aed9a6d798a2bf7a675fc9 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" repositorygcworker stdout | 2025-09-26 08:36:42,014 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} proxycacheblobworker stdout | 2025-09-26 08:36:42,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:36:42,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:52.477454+00:00 (in 9.999557 seconds) proxycacheblobworker stdout | 2025-09-26 08:36:42,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:52 GMT)" (scheduled at 2025-09-26 08:36:42.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:36:42,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:36:42,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 36, 42, 478641), True, datetime.datetime(2025, 9, 26, 8, 36, 42, 478641), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:36:42,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:36:42,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:36:42,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:36:52 GMT)" executed successfully servicekey stdout | 2025-09-26 08:36:42,626 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:36:42,703 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} gunicorn-registry stdout | 2025-09-26 08:36:43,489 [255] [DEBUG] [app] Starting request: urn:request:7b27bb8f-285a-4351-9cd0-a2abeacdc820 (/v2/testorg/alpine/blobs/uploads/08e2b19c-b8ca-4f43-a600-946436b53a3f) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:43,489 [255] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '08e2b19c-b8ca-4f43-a600-946436b53a3f', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:43,489 [255] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:43,489 [255] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:43,491 [255] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:43,491 [255] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:43,491 [255] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:43,491 [255] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:43,491 [255] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:43,492 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:43,493 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:43,494 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:43,496 [255] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:43,497 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:43,498 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:43,499 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:43,500 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:43,502 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['08e2b19c-b8ca-4f43-a600-946436b53a3f', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:43,503 [255] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:43,503 [255] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:43,505 [255] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/endpoints.json gunicorn-registry stdout | 2025-09-26 08:36:43,525 [255] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/sdk-default-configuration.json gunicorn-registry stdout | 2025-09-26 08:36:43,525 [255] [DEBUG] [botocore.hooks] Event choose-service-name: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,539 [255] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/s3/2006-03-01/service-2.json gunicorn-registry stdout | 2025-09-26 08:36:43,563 [255] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/s3/2006-03-01/endpoint-rule-set-1.json gunicorn-registry stdout | 2025-09-26 08:36:43,569 [255] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/partitions.json gunicorn-registry stdout | 2025-09-26 08:36:43,572 [255] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,572 [255] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler ._handler at 0x7fe1bb6fab60> gunicorn-registry stdout | 2025-09-26 08:36:43,615 [255] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,618 [255] [DEBUG] [botocore.endpoint] Setting s3 timeout as (60, 60) gunicorn-registry stdout | 2025-09-26 08:36:43,621 [255] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/_retry.json gunicorn-registry stdout | 2025-09-26 08:36:43,621 [255] [DEBUG] [botocore.client] Registering retry handlers for service: s3 gunicorn-registry stdout | 2025-09-26 08:36:43,621 [255] [DEBUG] [botocore.utils] Registering S3 region redirector handler gunicorn-registry stdout | 2025-09-26 08:36:43,634 [255] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/boto3/data/s3/2006-03-01/resources-1.json gunicorn-registry stdout | 2025-09-26 08:36:43,636 [255] [DEBUG] [botocore.hooks] Event choose-service-name: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,639 [255] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,639 [255] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler ._handler at 0x7fe1bb6fab60> gunicorn-registry stdout | 2025-09-26 08:36:43,639 [255] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,640 [255] [DEBUG] [botocore.endpoint] Setting s3 timeout as (60, 60) gunicorn-registry stdout | 2025-09-26 08:36:43,642 [255] [DEBUG] [botocore.client] Registering retry handlers for service: s3 gunicorn-registry stdout | 2025-09-26 08:36:43,642 [255] [DEBUG] [botocore.utils] Registering S3 region redirector handler gunicorn-registry stdout | 2025-09-26 08:36:43,642 [255] [DEBUG] [boto3.resources.factory] Loading s3:s3 gunicorn-registry stdout | 2025-09-26 08:36:43,643 [255] [DEBUG] [boto3.resources.factory] Loading s3:Bucket gunicorn-registry stdout | 2025-09-26 08:36:43,644 [255] [DEBUG] [boto3.resources.model] Renaming Bucket attribute name gunicorn-registry stdout | 2025-09-26 08:36:43,644 [255] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Bucket: calling handler ._handler at 0x7fe1bb6fae80> gunicorn-registry stdout | 2025-09-26 08:36:43,645 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,645 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,645 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:43,645 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,645 [255] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,645 [255] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:43,645 [255] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:43,646 [255] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:43,646 [255] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:43,646 [255] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:43,646 [255] [DEBUG] [botocore.hooks] Event before-call.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,646 [255] [DEBUG] [botocore.hooks] Event before-call.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,646 [255] [DEBUG] [botocore.hooks] Event before-call.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,647 [255] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadBucket) with params: {'url_path': '', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:43,647 [255] [DEBUG] [botocore.hooks] Event request-created.s3.HeadBucket: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:43,647 [255] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadBucket: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:43,647 [255] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,647 [255] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,648 [255] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:43,648 [255] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083643Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:43,648 [255] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083643Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 1033bd64e442f97aa90d7848981619a702e713eb1148bc82a4096f5d08a0ab87 gunicorn-registry stdout | 2025-09-26 08:36:43,648 [255] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 1632b7d9c43fe3c0cffe522a2c0d53ebd573593d95e74bad14e0d488e14e742e gunicorn-registry stdout | 2025-09-26 08:36:43,648 [255] [DEBUG] [botocore.hooks] Event request-created.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,648 [255] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:43,649 [255] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:43,649 [255] [DEBUG] [urllib3.connectionpool] Starting new HTTPS connection (1): s3.openshift-storage.svc.cluster.local:443 gunicorn-registry stdout | 2025-09-26 08:36:43,685 [255] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:43,685 [255] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8nx9-dyqcoy-1me', 'x-amz-id-2': 'mg0l8nx9-dyqcoy-1me', 'Date': 'Fri, 26 Sep 2025 08:36:43 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:43,685 [255] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:43,686 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,686 [255] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:43,686 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadBucket: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:43,686 [255] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:43,687 [255] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:43,687 [255] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:43,687 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,687 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,687 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,687 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,687 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:43,687 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,687 [255] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,688 [255] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:43,688 [255] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:43,688 [255] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:43,689 [255] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:43,689 [255] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:43,689 [255] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,689 [255] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,689 [255] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,689 [255] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:43,689 [255] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:43,689 [255] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:43,689 [255] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,690 [255] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,690 [255] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:43,690 [255] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083643Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:43,690 [255] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083643Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 65fb183ae612843fdaa4ab37a1004ffc8cb7256387a9c870a217a7802185494e gunicorn-registry stdout | 2025-09-26 08:36:43,690 [255] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 7bcb4753d2bed8728aaffbcb1ea0c96740b47a9ff1230bdd8978aac762a0a3d6 gunicorn-registry stdout | 2025-09-26 08:36:43,690 [255] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,690 [255] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:43,691 [255] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:43,691 [255] [DEBUG] [urllib3.connectionpool] Starting new HTTPS connection (1): s3.openshift-storage.svc.cluster.local:443 gunicorn-registry stdout | 2025-09-26 08:36:43,721 [255] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:43,721 [255] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8nyb-eloqvn-193b', 'x-amz-id-2': 'mg0l8nyb-eloqvn-193b', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:43 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:43,721 [255] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c368d6509bd73ec60008f9339f' gunicorn-registry stdout | 2025-09-26 08:36:43,722 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,722 [255] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:43,722 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:43,722 [255] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8nyb-eloqvn-193b', 'HostId': 'mg0l8nyb-eloqvn-193b', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8nyb-eloqvn-193b', 'x-amz-id-2': 'mg0l8nyb-eloqvn-193b', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:43 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3', 'UploadId': '68d6509bd73ec60008f9339f'} gunicorn-registry stdout | 2025-09-26 08:36:43,722 [255] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:43,723 [255] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:36:43,723 [255] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:36:43,724 [255] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3', 'UploadId': '68d6509bd73ec60008f9339f', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b894ec00>, 'ContentLength': 593} gunicorn-registry stdout | 2025-09-26 08:36:43,724 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,724 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,724 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,724 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,724 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:43,724 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,724 [255] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,724 [255] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:43,724 [255] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:43,724 [255] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:43,724 [255] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:43,725 [255] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:43,725 [255] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,725 [255] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,725 [255] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:36:43,725 [255] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,725 [255] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,725 [255] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3', 'query_string': {'uploadId': '68d6509bd73ec60008f9339f', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '593', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'i4AUpC7U1NtMceRhwKA4zg==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b894ec00>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3?uploadId=68d6509bd73ec60008f9339f&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3', 'UploadId': '68d6509bd73ec60008f9339f', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b894ec00>, 'ContentLength': 593}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:43,725 [255] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:43,726 [255] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:43,726 [255] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,726 [255] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,726 [255] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:43,726 [255] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3 gunicorn-registry stdout | partNumber=1&uploadId=68d6509bd73ec60008f9339f gunicorn-registry stdout | content-length:593 gunicorn-registry stdout | content-md5:i4AUpC7U1NtMceRhwKA4zg== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083643Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:43,726 [255] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083643Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | c84a7ab09d10a5a0b4cd3e9a8a20e82dba0c0ef672b97adc88aa66e2a7e9b240 gunicorn-registry stdout | 2025-09-26 08:36:43,726 [255] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | fd5ca4437290a1c2b120ae8b8f29f80c0c2e1dd8b0c1d1410e420453ee1e811c gunicorn-registry stdout | 2025-09-26 08:36:43,726 [255] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,726 [255] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:43,727 [255] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:43,727 [255] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:43,729 [255] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:36:43,787 [255] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3?uploadId=68d6509bd73ec60008f9339f&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:43,787 [255] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8nyo-et69ej-12s7', 'x-amz-id-2': 'mg0l8nyo-et69ej-12s7', 'ETag': '"8b8014a42ed4d4db4c71e461c0a038ce"', 'Date': 'Fri, 26 Sep 2025 08:36:43 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:36:43,787 [255] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:43,788 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,788 [255] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:43,788 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:43,788 [255] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8nyo-et69ej-12s7', 'HostId': 'mg0l8nyo-et69ej-12s7', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8nyo-et69ej-12s7', 'x-amz-id-2': 'mg0l8nyo-et69ej-12s7', 'etag': '"8b8014a42ed4d4db4c71e461c0a038ce"', 'date': 'Fri, 26 Sep 2025 08:36:43 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"8b8014a42ed4d4db4c71e461c0a038ce"'} gunicorn-registry stdout | 2025-09-26 08:36:43,789 [255] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3', 'UploadId': '68d6509bd73ec60008f9339f', 'MultipartUpload': {'Parts': [{'ETag': '"8b8014a42ed4d4db4c71e461c0a038ce"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:36:43,789 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,789 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,789 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,789 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:43,789 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,789 [255] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,789 [255] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:43,790 [255] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:43,790 [255] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:43,790 [255] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:43,790 [255] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:43,791 [255] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,791 [255] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,791 [255] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,791 [255] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3', 'query_string': {'uploadId': '68d6509bd73ec60008f9339f'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"8b8014a42ed4d4db4c71e461c0a038ce"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3?uploadId=68d6509bd73ec60008f9339f', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3', 'UploadId': '68d6509bd73ec60008f9339f', 'MultipartUpload': {'Parts': [{'ETag': '"8b8014a42ed4d4db4c71e461c0a038ce"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:43,792 [255] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:43,792 [255] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:43,792 [255] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,792 [255] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,792 [255] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:43,792 [255] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3 gunicorn-registry stdout | uploadId=68d6509bd73ec60008f9339f gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:f6adf1bd452ea6359a8698496fc1be55b2d9587d3f305573c200da98ed038145 gunicorn-registry stdout | x-amz-date:20250926T083643Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | f6adf1bd452ea6359a8698496fc1be55b2d9587d3f305573c200da98ed038145 gunicorn-registry stdout | 2025-09-26 08:36:43,792 [255] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083643Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 45427b4eaaac1a0258a3fee29c88b73534690b54a24adb500083c0ec6f62d04b gunicorn-registry stdout | 2025-09-26 08:36:43,792 [255] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 6d08fd4d2ad1a36aaad8f9dab80d350955e138bf3378b4ef80376d003caaa2e3 gunicorn-registry stdout | 2025-09-26 08:36:43,793 [255] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,793 [255] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:43,793 [255] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:43,809 [255] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3?uploadId=68d6509bd73ec60008f9339f HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:36:43,810 [255] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8o0i-fwtmk2-1dio', 'x-amz-id-2': 'mg0l8o0i-fwtmk2-1dio', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:36:43 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:43,810 [255] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3"b56804647948f534a29bd63db3e05be4-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3?uploadId=68d6509bd73ec60008f9339f' gunicorn-registry stdout | 2025-09-26 08:36:43,811 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,811 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:43,811 [255] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:43,811 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:43,811 [255] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8o0i-fwtmk2-1dio', 'HostId': 'mg0l8o0i-fwtmk2-1dio', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8o0i-fwtmk2-1dio', 'x-amz-id-2': 'mg0l8o0i-fwtmk2-1dio', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:36:43 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3?uploadId=68d6509bd73ec60008f9339f', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/cd111381-6e5d-464b-842d-2e10db3e61c3', 'ETag': '"b56804647948f534a29bd63db3e05be4-1"'} gunicorn-registry stdout | 2025-09-26 08:36:43,811 [255] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:43,812 [255] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:43,813 [255] [DEBUG] [data.registry_model.blobuploader] Uploaded 593 bytes to blob 08e2b19c-b8ca-4f43-a600-946436b53a3f took 0.3097803592681885 seconds gunicorn-registry stdout | 2025-09-26 08:36:43,814 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['08e2b19c-b8ca-4f43-a600-946436b53a3f', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:43,816 [255] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, '08e2b19c-b8ca-4f43-a600-946436b53a3f', 593, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwfSwidmFyaWFudCI6InY3In1mM2RjODEyNGY3ZjMzNjJhNjZjNjE4ZDFjNWNiNmMyMmQ2YTkxY2E3NDhiMzIiXREAAAAAAAAAABIAAAAAAAA8Ri/sKH7FEej7roOSw1vrq6NiHl1XvmYNHsdwDjIA05RiLg==', 9, '{"chunks": [["uploads/cd111381-6e5d-464b-842d-2e10db3e61c3", 0, 593]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 36, 43, 441843), None, None, 18]) gunicorn-registry stdout | 2025-09-26 08:36:43,818 [255] [DEBUG] [app] Ending request: urn:request:7b27bb8f-285a-4351-9cd0-a2abeacdc820 (/v2/testorg/alpine/blobs/uploads/08e2b19c-b8ca-4f43-a600-946436b53a3f) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:7b27bb8f-285a-4351-9cd0-a2abeacdc820', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/08e2b19c-b8ca-4f43-a600-946436b53a3f', 'path': '/v2/testorg/alpine/blobs/uploads/08e2b19c-b8ca-4f43-a600-946436b53a3f', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:43,819 [255] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:43,819 [255] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:43,819 [255] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:43 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/08e2b19c-b8ca-4f43-a600-946436b53a3f HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:43 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/08e2b19c-b8ca-4f43-a600-946436b53a3f HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.332 2365 0.331) gunicorn-registry stdout | 2025-09-26 08:36:44,135 [251] [DEBUG] [app] Starting request: urn:request:baa219eb-7f60-4083-886f-7cd4aa2cabec (/v2/testorg/alpine/manifests/sha256:0b762e487f7a8eb308da049b9a1edfaef7345f847399c27899d49c10e9c325b9) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:44,135 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'manifest_ref': 'sha256:0b762e487f7a8eb308da049b9a1edfaef7345f847399c27899d49c10e9c325b9', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:44,135 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:44,135 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:44,136 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:44,136 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:44,137 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:44,137 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:44,137 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:44,141 [251] [DEBUG] [data.cache.cache_key] Loading repository lookup from cache_key: repository_lookup_testorg_alpine gunicorn-registry stdout | 2025-09-26 08:36:44,142 [251] [DEBUG] [data.cache.impl] Checking cache for key repository_lookup_testorg_alpine gunicorn-registry stdout | 2025-09-26 08:36:44,142 [251] [DEBUG] [data.cache.impl] Found result in cache for key repository_lookup_testorg_alpine: {'id': 2, 'visibility': {'id': 2, 'name': 'private'}, 'kind': {'id': 1, 'name': 'image'}, 'state': 0, 'namespace_user': {'stripe_id': None}} gunicorn-registry stdout | 2025-09-26 08:36:44,143 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:0b762e487f7a8eb308da049b9a1edfaef7345f847399c27899d49c10e9c325b9', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,147 [251] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL (SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "uploadedblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1")', [2, 'sha256:22e4d17029cf647ff505d5389be90006efc5ed4178aed9a6d798a2bf7a675fc9', 1, 2, 'sha256:1717b9d509321d1c04cfcc2c1c9653e1556e8b87e34a532d0f5c3bdbcf501577', 1]) gunicorn-registry stdout | 2025-09-26 08:36:44,149 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."digest" = %s) AND ("t1"."repository_id" = %s)) LIMIT %s OFFSET %s', ['sha256:0b762e487f7a8eb308da049b9a1edfaef7345f847399c27899d49c10e9c325b9', 2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,149 [257] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '257'} gunicorn-registry stdout | 2025-09-26 08:36:44,151 [251] [DEBUG] [peewee] ('INSERT INTO "manifest" ("repository_id", "digest", "media_type_id", "manifest_bytes", "config_media_type", "layers_compressed_size", "subject", "subject_backfilled", "artifact_type", "artifact_type_backfilled") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifest"."id"', [2, 'sha256:0b762e487f7a8eb308da049b9a1edfaef7345f847399c27899d49c10e9c325b9', 18, '{\n "schemaVersion": 2,\n "mediaType": "application/vnd.oci.image.manifest.v1+json",\n "config": {\n "mediaType": "application/vnd.oci.image.config.v1+json",\n "digest": "sha256:1717b9d509321d1c04cfcc2c1c9653e1556e8b87e34a532d0f5c3bdbcf501577",\n "size": 593\n },\n "layers": [\n {\n "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",\n "digest": "sha256:22e4d17029cf647ff505d5389be90006efc5ed4178aed9a6d798a2bf7a675fc9",\n "size": 3219181\n }\n ],\n "annotations": {\n "com.docker.official-images.bashbrew.arch": "arm32v7",\n "org.opencontainers.image.base.name": "scratch",\n "org.opencontainers.image.created": "2025-05-30T16:20:41Z",\n "org.opencontainers.image.revision": "5213c5a71c73d39d5896657909e753effb1c05ff",\n "org.opencontainers.image.source": "https://github.com/alpinelinux/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:armv7",\n "org.opencontainers.image.url": "https://hub.docker.com/_/alpine",\n "org.opencontainers.image.version": "3.22.0"\n }\n}', 'application/vnd.oci.image.config.v1+json', 3219181, None, True, None, True]) gunicorn-registry stdout | 2025-09-26 08:36:44,153 [251] [DEBUG] [peewee] ('INSERT INTO "manifestblob" ("repository_id", "manifest_id", "blob_id") VALUES (%s, %s, %s), (%s, %s, %s) RETURNING "manifestblob"."id"', [2, 6, 18, 2, 6, 19]) gunicorn-registry stdout | 2025-09-26 08:36:44,154 [251] [DEBUG] [peewee] ('SELECT "t1"."namespace_user_id" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,155 [251] [DEBUG] [peewee] ('SELECT 1 FROM "user" AS "t1" WHERE ((("t1"."id" = %s) AND "t1"."enabled") AND NOT "t1"."robot") LIMIT %s', [3, 1]) gunicorn-registry stdout | 2025-09-26 08:36:44,155 [253] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '253'} gunicorn-registry stdout | 2025-09-26 08:36:44,156 [251] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [3, 18, 6, 1]) gunicorn-registry stdout | 2025-09-26 08:36:44,156 [251] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [3, 19, 6, 1]) gunicorn-registry stdout | 2025-09-26 08:36:44,157 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,158 [251] [INFO] [data.model.quota] updating namespace size for manifest 6 in namespace 3, QuotaOperation.ADD 3219774 gunicorn-registry stdout | 2025-09-26 08:36:44,158 [251] [DEBUG] [peewee] ('UPDATE "quotanamespacesize" SET "size_bytes" = ("quotanamespacesize"."size_bytes" + %s) WHERE ("quotanamespacesize"."namespace_user_id" = %s)', [3219774, 3]) gunicorn-registry stdout | 2025-09-26 08:36:44,159 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotarepositorysize" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,159 [251] [INFO] [data.model.quota] updating repository size for manifest 6 in repository 2, QuotaOperation.ADD 3219774 gunicorn-registry stdout | 2025-09-26 08:36:44,159 [251] [DEBUG] [peewee] ('UPDATE "quotarepositorysize" SET "size_bytes" = ("quotarepositorysize"."size_bytes" + %s) WHERE ("quotarepositorysize"."repository_id" = %s)', [3219774, 2]) gunicorn-registry stdout | 2025-09-26 08:36:44,160 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [6, None, 1758879404160, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,161 [59] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '59'} gunicorn-registry stdout | 2025-09-26 08:36:44,163 [251] [DEBUG] [peewee] ('INSERT INTO "tag" ("name", "repository_id", "manifest_id", "lifetime_start_ms", "lifetime_end_ms", "immutable", "hidden", "reversion", "tag_kind_id") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "tag"."id"', ['$temp-63cae707-38f1-43e6-9794-6296050bf142', 2, 6, 1758875804160, 1758879404160, False, True, False, 1]) gunicorn-registry stdout | 2025-09-26 08:36:44,165 [255] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '255'} gunicorn-registry stdout | 2025-09-26 08:36:44,166 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:1717b9d509321d1c04cfcc2c1c9653e1556e8b87e34a532d0f5c3bdbcf501577', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,167 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['fe50d501-0d40-4c71-b24e-6ee9001a30c2']) gunicorn-registry stdout | 2025-09-26 08:36:44,168 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:44,170 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:44,170 [251] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/17/1717b9d509321d1c04cfcc2c1c9653e1556e8b87e34a532d0f5c3bdbcf501577'} gunicorn-registry stdout | 2025-09-26 08:36:44,170 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:44,170 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:44,170 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:44,170 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:44,170 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:44,170 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:44,170 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:44,170 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:44,171 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:44,171 [256] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '256'} gunicorn-registry stdout | 2025-09-26 08:36:44,171 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:44,171 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:44,171 [251] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:44,172 [251] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:44,172 [251] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:44,172 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/17/1717b9d509321d1c04cfcc2c1c9653e1556e8b87e34a532d0f5c3bdbcf501577', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/17/1717b9d509321d1c04cfcc2c1c9653e1556e8b87e34a532d0f5c3bdbcf501577', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/17/1717b9d509321d1c04cfcc2c1c9653e1556e8b87e34a532d0f5c3bdbcf501577', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/17/1717b9d509321d1c04cfcc2c1c9653e1556e8b87e34a532d0f5c3bdbcf501577'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:44,172 [251] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:44,172 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:44,172 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:44,172 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:44,172 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:44,172 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/17/1717b9d509321d1c04cfcc2c1c9653e1556e8b87e34a532d0f5c3bdbcf501577 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083644Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:44,172 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083644Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 274b34c9a749a937d24f7b95af788b166ab85fcc559cf174b70c244edf63eb67 gunicorn-registry stdout | 2025-09-26 08:36:44,172 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 36b6aff449e3f7a95d97915422bb16432c95d04805c0b347d9cfa0ae1e34aaa3 gunicorn-registry stdout | 2025-09-26 08:36:44,172 [251] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:44,173 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:44,173 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:44,178 [258] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '258'} gunicorn-registry stdout | 2025-09-26 08:36:44,183 [252] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '252'} gunicorn-registry stdout | 2025-09-26 08:36:44,189 [254] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '254'} gunicorn-registry stdout | 2025-09-26 08:36:44,194 [251] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '251'} gunicorn-registry stdout | 2025-09-26 08:36:44,234 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/17/1717b9d509321d1c04cfcc2c1c9653e1556e8b87e34a532d0f5c3bdbcf501577 HTTP/1.1" 200 593 gunicorn-registry stdout | 2025-09-26 08:36:44,234 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8obe-5udzyj-14hw', 'x-amz-id-2': 'mg0l8obe-5udzyj-14hw', 'ETag': '"b56804647948f534a29bd63db3e05be4-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:44 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '593', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:44 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:44,234 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:36:44,234 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:44,234 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:44,234 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:44,234 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8obe-5udzyj-14hw', 'HostId': 'mg0l8obe-5udzyj-14hw', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8obe-5udzyj-14hw', 'x-amz-id-2': 'mg0l8obe-5udzyj-14hw', 'etag': '"b56804647948f534a29bd63db3e05be4-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:44 GMT', 'content-type': 'application/octet-stream', 'content-length': '593', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:36:44 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 44, tzinfo=tzutc()), 'ContentLength': 593, 'ETag': '"b56804647948f534a29bd63db3e05be4-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:36:44,236 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "mediatype" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:44,238 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."mutable" FROM "labelsourcetype" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:44,240 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [6, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,241 [251] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['65888820-a8e2-495a-81e1-b74c0c3c4ae9', 'com.docker.official-images.bashbrew.arch', 'arm32v7', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:44,242 [251] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [2, 6, 15]) gunicorn-registry stdout | 2025-09-26 08:36:44,244 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [6, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,245 [251] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['e2866ad6-2743-4a75-aa95-f1b38c0e1d03', 'org.opencontainers.image.base.name', 'scratch', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:44,246 [251] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [2, 6, 16]) gunicorn-registry stdout | 2025-09-26 08:36:44,248 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [6, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,249 [251] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['1bac581a-d4f2-4ecb-a172-0a961194f2f6', 'org.opencontainers.image.created', '2025-05-30T16:20:41Z', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:44,250 [251] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [2, 6, 17]) gunicorn-registry stdout | 2025-09-26 08:36:44,252 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [6, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,253 [251] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['ec3ac32d-b650-42cb-8cdc-9f5c04c29fb7', 'org.opencontainers.image.revision', '5213c5a71c73d39d5896657909e753effb1c05ff', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:44,253 [251] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [2, 6, 18]) gunicorn-registry stdout | 2025-09-26 08:36:44,255 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [6, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,257 [251] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['13f3ee36-3f64-4fca-9021-755624e53ef5', 'org.opencontainers.image.source', 'https://github.com/alpinelinux/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:armv7', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:44,258 [251] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [2, 6, 19]) gunicorn-registry stdout | 2025-09-26 08:36:44,260 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [6, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,261 [251] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['39166179-c323-4061-8799-f0c94ee06b8e', 'org.opencontainers.image.url', 'https://hub.docker.com/_/alpine', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:44,262 [251] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [2, 6, 20]) gunicorn-registry stdout | 2025-09-26 08:36:44,264 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [6, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,265 [251] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['c2ea37b6-d4ea-4b9c-a0dd-9ea82451fcc5', 'org.opencontainers.image.version', '3.22.0', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:36:44,266 [251] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [2, 6, 21]) gunicorn-registry stdout | 2025-09-26 08:36:44,268 [251] [DEBUG] [app] Ending request: urn:request:baa219eb-7f60-4083-886f-7cd4aa2cabec (/v2/testorg/alpine/manifests/sha256:0b762e487f7a8eb308da049b9a1edfaef7345f847399c27899d49c10e9c325b9) {'endpoint': 'v2.write_manifest_by_digest', 'request_id': 'urn:request:baa219eb-7f60-4083-886f-7cd4aa2cabec', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/manifests/sha256:0b762e487f7a8eb308da049b9a1edfaef7345f847399c27899d49c10e9c325b9', 'path': '/v2/testorg/alpine/manifests/sha256:0b762e487f7a8eb308da049b9a1edfaef7345f847399c27899d49c10e9c325b9', 'parameters': {}, 'json_body': {'schemaVersion': 2, 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'config': {'mediaType': 'application/vnd.oci.image.config.v1+json', 'digest': 'sha256:1717b9d509321d1c04cfcc2c1c9653e1556e8b87e34a532d0f5c3bdbcf501577', 'size': 593}, 'layers': [{'mediaType': 'application/vnd.oci.image.layer.v1.tar+gzip', 'digest': 'sha256:22e4d17029cf647ff505d5389be90006efc5ed4178aed9a6d798a2bf7a675fc9', 'size': 3219181}], 'annotations': {'com.docker.official-images.bashbrew.arch': 'arm32v7', 'org.opencontainers.image.base.name': 'scratch', 'org.opencontainers.image.created': '2025-05-30T16:20:41Z', 'org.opencontainers.image.revision': '5213c5a71c73d39d5896657909e753effb1c05ff', 'org.opencontainers.image.source': 'https://github.com/alpinelinux/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:armv7', 'org.opencontainers.image.url': 'https://hub.docker.com/_/alpine', 'org.opencontainers.image.version': '3.22.0'}}, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:44,268 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:44,268 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:44,268 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:44 +0000] "PUT /v2/testorg/alpine/manifests/sha256:0b762e487f7a8eb308da049b9a1edfaef7345f847399c27899d49c10e9c325b9 HTTP/1.1" 201 2 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:44 +0000] "PUT /v2/testorg/alpine/manifests/sha256:0b762e487f7a8eb308da049b9a1edfaef7345f847399c27899d49c10e9c325b9 HTTP/1.1" 201 2 "-" "skopeo/1.14.5" (0.135 2843 0.135) gunicorn-registry stdout | 2025-09-26 08:36:44,686 [251] [DEBUG] [app] Starting request: urn:request:b02f9802-ac63-4dbc-941c-423b01f61604 (/v2/testorg/alpine/blobs/sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:44,686 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:44,686 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:44,686 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:44,688 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:44,688 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:44,688 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:44,688 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:44,688 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:44,688 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,690 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,692 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:44,692 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1_2 gunicorn-registry stdout | 2025-09-26 08:36:44,693 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:44,694 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,695 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,695 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,696 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,697 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,698 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1_2: None gunicorn-registry stdout | 2025-09-26 08:36:44,699 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1_2: None gunicorn-registry stdout | 2025-09-26 08:36:44,699 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:44,699 [251] [DEBUG] [app] Ending request: urn:request:b02f9802-ac63-4dbc-941c-423b01f61604 (/v2/testorg/alpine/blobs/sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:b02f9802-ac63-4dbc-941c-423b01f61604', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1', 'path': '/v2/testorg/alpine/blobs/sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:44,699 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:44,699 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:44,699 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:44 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:44 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.014 1714 0.014) gunicorn-registry stdout | 2025-09-26 08:36:44,742 [251] [DEBUG] [app] Starting request: urn:request:b713a028-f30c-43e6-821b-babec9239c72 (/v2/testorg/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:44,743 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:44,743 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:44,743 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:44,744 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:44,744 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:44,744 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:44,744 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:44,744 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:44,746 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,747 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,748 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,749 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,750 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,751 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,752 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:44,754 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,755 [251] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [2, 'cdc43eb9-1731-4583-ad05-d7f91764c685', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 36, 44, 755031)]) gunicorn-registry stdout | 2025-09-26 08:36:44,757 [251] [DEBUG] [app] Ending request: urn:request:b713a028-f30c-43e6-821b-babec9239c72 (/v2/testorg/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:b713a028-f30c-43e6-821b-babec9239c72', 'remote_addr': '10.131.2.20', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/', 'path': '/v2/testorg/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:44,757 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:44,757 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:44,757 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:44 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:44 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.016 1693 0.016) gunicorn-registry stdout | 2025-09-26 08:36:44,881 [258] [DEBUG] [app] Starting request: urn:request:01ff076d-a0d9-4f81-b7ac-59e1db5cb40d (/v2/testorg/alpine/blobs/sha256:3032b259f8109e3849ca23c23e8a8e9749a57d7ec26c7d53181220442b7fd7ba) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:44,881 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:3032b259f8109e3849ca23c23e8a8e9749a57d7ec26c7d53181220442b7fd7ba', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:44,881 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:44,881 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:44,882 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:44,882 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:44,882 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:44,882 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:44,882 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:44,883 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,885 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,886 [258] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:44,886 [258] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:3032b259f8109e3849ca23c23e8a8e9749a57d7ec26c7d53181220442b7fd7ba_2 gunicorn-registry stdout | 2025-09-26 08:36:44,887 [258] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:3032b259f8109e3849ca23c23e8a8e9749a57d7ec26c7d53181220442b7fd7ba_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:44,888 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,889 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,890 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,891 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:3032b259f8109e3849ca23c23e8a8e9749a57d7ec26c7d53181220442b7fd7ba', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,892 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:3032b259f8109e3849ca23c23e8a8e9749a57d7ec26c7d53181220442b7fd7ba', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,893 [258] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:3032b259f8109e3849ca23c23e8a8e9749a57d7ec26c7d53181220442b7fd7ba_2: None gunicorn-registry stdout | 2025-09-26 08:36:44,893 [258] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:3032b259f8109e3849ca23c23e8a8e9749a57d7ec26c7d53181220442b7fd7ba_2: None gunicorn-registry stdout | 2025-09-26 08:36:44,893 [258] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:44,894 [258] [DEBUG] [app] Ending request: urn:request:01ff076d-a0d9-4f81-b7ac-59e1db5cb40d (/v2/testorg/alpine/blobs/sha256:3032b259f8109e3849ca23c23e8a8e9749a57d7ec26c7d53181220442b7fd7ba) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:01ff076d-a0d9-4f81-b7ac-59e1db5cb40d', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:3032b259f8109e3849ca23c23e8a8e9749a57d7ec26c7d53181220442b7fd7ba', 'path': '/v2/testorg/alpine/blobs/sha256:3032b259f8109e3849ca23c23e8a8e9749a57d7ec26c7d53181220442b7fd7ba', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:44,894 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:44,894 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:44,894 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:44 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:3032b259f8109e3849ca23c23e8a8e9749a57d7ec26c7d53181220442b7fd7ba HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:44 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:3032b259f8109e3849ca23c23e8a8e9749a57d7ec26c7d53181220442b7fd7ba HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.014 1714 0.014) gunicorn-registry stdout | 2025-09-26 08:36:44,941 [258] [DEBUG] [app] Starting request: urn:request:1b3a1a06-3045-4bd0-a56f-3032ff740f73 (/v2/testorg/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:44,942 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:44,942 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:44,942 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:44,943 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:44,943 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:44,943 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:44,943 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:44,943 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:44,944 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,945 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,947 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,948 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,949 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,950 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,951 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:44,952 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:44,953 [258] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [2, '8e8ca528-6a1d-4f77-a062-80ef50899ad5', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 36, 44, 953246)]) gunicorn-registry stdout | 2025-09-26 08:36:44,956 [258] [DEBUG] [app] Ending request: urn:request:1b3a1a06-3045-4bd0-a56f-3032ff740f73 (/v2/testorg/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:1b3a1a06-3045-4bd0-a56f-3032ff740f73', 'remote_addr': '10.131.2.20', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/', 'path': '/v2/testorg/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:44,956 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:44,956 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:44,956 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:44 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:44 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.015 1693 0.015) gunicorn-registry stdout | 2025-09-26 08:36:45,096 [258] [DEBUG] [app] Starting request: urn:request:a4deb92e-3612-44e1-96f5-2205d390a93a (/v2/testorg/alpine/blobs/uploads/cdc43eb9-1731-4583-ad05-d7f91764c685) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:45,096 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'cdc43eb9-1731-4583-ad05-d7f91764c685', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:45,096 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:45,096 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:45,097 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:45,097 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:45,097 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:45,097 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:45,097 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:45,098 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,099 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,100 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,101 [258] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,102 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,104 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,104 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,105 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:45,106 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['cdc43eb9-1731-4583-ad05-d7f91764c685', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,107 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:45,108 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:45,108 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:45,111 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:45,111 [258] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5b52e242-2baa-4fb0-9fee-8663f63e6587', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:45,111 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,112 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,112 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,112 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,112 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,112 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,112 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,112 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,112 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:45,112 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:45,112 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:45,112 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:45,112 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,112 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,113 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,113 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/5b52e242-2baa-4fb0-9fee-8663f63e6587?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5b52e242-2baa-4fb0-9fee-8663f63e6587', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5b52e242-2baa-4fb0-9fee-8663f63e6587?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5b52e242-2baa-4fb0-9fee-8663f63e6587', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:45,113 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,113 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,113 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,113 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,113 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:45,113 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5b52e242-2baa-4fb0-9fee-8663f63e6587 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083645Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:45,113 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083645Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | b02747a014c1cebb10cf3ecfafbfe1ee36b85b27a6f747705e8a989275d0c734 gunicorn-registry stdout | 2025-09-26 08:36:45,113 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | a5596579a3aa85f6a584054f481c95a8bbe08cee417a6a870bd249c8c11d5f06 gunicorn-registry stdout | 2025-09-26 08:36:45,113 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,114 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:45,114 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:45,122 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5b52e242-2baa-4fb0-9fee-8663f63e6587?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:45,122 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8p18-4om954-vj8', 'x-amz-id-2': 'mg0l8p18-4om954-vj8', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:45 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:45,122 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/5b52e242-2baa-4fb0-9fee-8663f63e658768d6509dd73ec60008f933b1' gunicorn-registry stdout | 2025-09-26 08:36:45,122 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,122 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:45,122 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,122 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8p18-4om954-vj8', 'HostId': 'mg0l8p18-4om954-vj8', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8p18-4om954-vj8', 'x-amz-id-2': 'mg0l8p18-4om954-vj8', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:45 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5b52e242-2baa-4fb0-9fee-8663f63e6587', 'UploadId': '68d6509dd73ec60008f933b1'} gunicorn-registry stdout | 2025-09-26 08:36:45,122 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:45,123 [258] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5b52e242-2baa-4fb0-9fee-8663f63e6587', 'UploadId': '68d6509dd73ec60008f933b1'} gunicorn-registry stdout | 2025-09-26 08:36:45,123 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,123 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,123 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,123 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,123 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,123 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,124 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:45,124 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:45,124 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:45,124 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:45,124 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,124 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,124 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,124 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/5b52e242-2baa-4fb0-9fee-8663f63e6587', 'query_string': {'uploadId': '68d6509dd73ec60008f933b1'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5b52e242-2baa-4fb0-9fee-8663f63e6587', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5b52e242-2baa-4fb0-9fee-8663f63e6587?uploadId=68d6509dd73ec60008f933b1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5b52e242-2baa-4fb0-9fee-8663f63e6587', 'UploadId': '68d6509dd73ec60008f933b1'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:45,124 [258] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,124 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,124 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,124 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,124 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:45,125 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5b52e242-2baa-4fb0-9fee-8663f63e6587 gunicorn-registry stdout | uploadId=68d6509dd73ec60008f933b1 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083645Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:45,125 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083645Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 5e67fad920a77f906946542b1e5f54f3aa60788a5dd8b90e22c9b18fe76e009e gunicorn-registry stdout | 2025-09-26 08:36:45,125 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 8fa32ef10a95ba2c00292a2b8f6f9d0a41f1915a66771aa348e030b49e4d3509 gunicorn-registry stdout | 2025-09-26 08:36:45,125 [258] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,125 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:45,125 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:45,133 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5b52e242-2baa-4fb0-9fee-8663f63e6587?uploadId=68d6509dd73ec60008f933b1 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:36:45,133 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8p1j-4vcl8y-dfk', 'x-amz-id-2': 'mg0l8p1j-4vcl8y-dfk', 'Date': 'Fri, 26 Sep 2025 08:36:45 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:45,133 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:45,134 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,134 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:45,134 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,134 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8p1j-4vcl8y-dfk', 'HostId': 'mg0l8p1j-4vcl8y-dfk', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8p1j-4vcl8y-dfk', 'x-amz-id-2': 'mg0l8p1j-4vcl8y-dfk', 'date': 'Fri, 26 Sep 2025 08:36:45 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:36:45,134 [258] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob cdc43eb9-1731-4583-ad05-d7f91764c685 took 0.026418685913085938 seconds gunicorn-registry stdout | 2025-09-26 08:36:45,134 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['cdc43eb9-1731-4583-ad05-d7f91764c685', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,136 [258] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'cdc43eb9-1731-4583-ad05-d7f91764c685', 5719, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwaXRAdjEjaGVybWV0aWMiOnRydWV9fX05MTgxfV1dfX0sImh0dHBzOi8vbW9ieXByb2plY3Qub3JnL2J1aWxkaxcAAAAAAAAAALIAAAAAAADOWRZRVsm4Nn2TbMdbTO2xzVNg/fJWjICpDtqzhPAYsJRiLg==', 9, '{"chunks": [["uploads/a5d2286b-d6c5-4412-8d80-c746fe59cfe9", 0, 5719]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 36, 44, 755031), None, None, 19]) gunicorn-registry stdout | 2025-09-26 08:36:45,137 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:45,137 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:45,137 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:45,138 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:45,138 [258] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/90/90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1'} gunicorn-registry stdout | 2025-09-26 08:36:45,138 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,138 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,138 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,139 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,139 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,139 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,139 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,139 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:45,139 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:45,139 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:45,139 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:45,139 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,139 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,139 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,139 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/90/90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/90/90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/90/90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/90/90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:45,139 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,139 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,139 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,139 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,139 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:45,140 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/90/90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083645Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:45,140 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083645Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | f51ea2958d2919426908480fe1b92f6f315856292e69adac24f8a0d3f35e9d7a gunicorn-registry stdout | 2025-09-26 08:36:45,140 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 8a1d54b65a4f53efbbf43c1f4bd6377b5533c29935bd504300e2288f92641ab3 gunicorn-registry stdout | 2025-09-26 08:36:45,140 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,140 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:45,140 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:45,147 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/90/90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:36:45,147 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8p1z-556q3y-15ka', 'x-amz-id-2': 'mg0l8p1z-556q3y-15ka', 'Content-Type': 'application/xml', 'Content-Length': '339', 'Date': 'Fri, 26 Sep 2025 08:36:45 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:45,147 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:45,147 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,147 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:45,148 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,148 [258] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:36:45,148 [258] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:36:45,148 [258] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/90/90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1 gunicorn-registry stdout | 2025-09-26 08:36:45,148 [258] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:45,148 [258] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:45,148 [258] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:45,148 [258] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:36:45,149 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,149 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,149 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,149 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,149 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,149 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,149 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,149 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:45,149 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:45,149 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:45,149 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:45,149 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,149 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,149 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,149 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/a5d2286b-d6c5-4412-8d80-c746fe59cfe9', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a5d2286b-d6c5-4412-8d80-c746fe59cfe9', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a5d2286b-d6c5-4412-8d80-c746fe59cfe9', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/a5d2286b-d6c5-4412-8d80-c746fe59cfe9'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:45,149 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,149 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,149 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,149 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,149 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,150 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:45,150 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a5d2286b-d6c5-4412-8d80-c746fe59cfe9 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083645Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:45,150 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083645Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | b79c2c892e24bea6311d9aad329a280ed5979eca8d2b1d2944ec3fe5125987cb gunicorn-registry stdout | 2025-09-26 08:36:45,150 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 8011879ef6b317d471803f666179652e23741dd4e52176799eed41bff92e6729 gunicorn-registry stdout | 2025-09-26 08:36:45,150 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,150 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,150 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:45,150 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:45,151 [258] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | 2025-09-26 08:36:45,178 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a5d2286b-d6c5-4412-8d80-c746fe59cfe9 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:45,178 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8p2v-5npivq-8xb', 'x-amz-id-2': 'mg0l8p2v-5npivq-8xb', 'ETag': '"7b63811f71804eeae2341355191851fc-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:45 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '5719', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:45 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:45,178 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:45,179 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,179 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:45,179 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,179 [258] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/90/90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:36:45,179 [258] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:45,180 [258] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/90/90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:45,180 [258] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/90/90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:45,180 [258] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/90/90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/a5d2286b-d6c5-4412-8d80-c746fe59cfe9'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/90/90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1', 'extra_args': {}, 'callbacks': [], 'size': 5719} gunicorn-registry stdout | 2025-09-26 08:36:45,180 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,180 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,180 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,180 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,180 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,180 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,180 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,180 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,180 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,180 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,180 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:45,180 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:45,181 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:45,181 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:45,181 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,181 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,181 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,181 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/90/90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a5d2286b-d6c5-4412-8d80-c746fe59cfe9', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/90/90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/90/90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a5d2286b-d6c5-4412-8d80-c746fe59cfe9', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/90/90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:45,181 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,181 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,181 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,181 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,181 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,182 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:45,182 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/90/90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a5d2286b-d6c5-4412-8d80-c746fe59cfe9 gunicorn-registry stdout | x-amz-date:20250926T083645Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:45,182 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083645Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | e2ca6238aabaf975f979eac957826c98a9047d083613fb40ba703ddfd889eec1 gunicorn-registry stdout | 2025-09-26 08:36:45,182 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | fcf5aec7e5e8ea8a60984a6ba0d580b995d7e8d1647bff09f14b5a9719c85c3c gunicorn-registry stdout | 2025-09-26 08:36:45,182 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,182 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,182 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:45,183 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:45,183 [258] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:45,207 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/90/90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:36:45,207 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8p34-5tcy6p-pmz', 'x-amz-id-2': 'mg0l8p34-5tcy6p-pmz', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:36:45 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:45,208 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:36:45.000Z"7b63811f71804eeae2341355191851fc-1"' gunicorn-registry stdout | 2025-09-26 08:36:45,208 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,208 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,209 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:45,209 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,209 [258] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:45,209 [258] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob cdc43eb9-1731-4583-ad05-d7f91764c685 with digest sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1 took 0.06154060363769531 seconds gunicorn-registry stdout | 2025-09-26 08:36:45,210 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['cdc43eb9-1731-4583-ad05-d7f91764c685', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,211 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,212 [258] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['c43db34d-77c6-4a86-8ff5-0351dd5f4669', 5719, None, True, True, 'sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1']) gunicorn-registry stdout | 2025-09-26 08:36:45,213 [258] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [20, 9]) gunicorn-registry stdout | 2025-09-26 08:36:45,214 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,215 [258] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [2, 20, datetime.datetime(2025, 9, 26, 8, 36, 45, 214888), datetime.datetime(2025, 9, 26, 9, 36, 45, 214868)]) gunicorn-registry stdout | 2025-09-26 08:36:45,215 [258] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [19]) gunicorn-registry stdout | 2025-09-26 08:36:45,217 [258] [DEBUG] [app] Ending request: urn:request:a4deb92e-3612-44e1-96f5-2205d390a93a (/v2/testorg/alpine/blobs/uploads/cdc43eb9-1731-4583-ad05-d7f91764c685) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:a4deb92e-3612-44e1-96f5-2205d390a93a', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/cdc43eb9-1731-4583-ad05-d7f91764c685?digest=sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1', 'path': '/v2/testorg/alpine/blobs/uploads/cdc43eb9-1731-4583-ad05-d7f91764c685', 'parameters': {'digest': 'sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:45,217 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:45,218 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:45,218 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:45 +0000] "PUT /v2/testorg/alpine/blobs/uploads/cdc43eb9-1731-4583-ad05-d7f91764c685?digest=sha256%3A90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:45 +0000] "PUT /v2/testorg/alpine/blobs/uploads/cdc43eb9-1731-4583-ad05-d7f91764c685?digest=sha256%3A90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.123 1849 0.123) securityworker stdout | 2025-09-26 08:36:45,223 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "POST /indexer/api/v1/index_report HTTP/1.1" 201 None securityworker stdout | 2025-09-26 08:36:45,233 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) securityworker stdout | 2025-09-26 08:36:45,234 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) securityworker stdout | 2025-09-26 08:36:45,235 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:36:45,236 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/matcher/api/v1/vulnerability_report/sha256:cfdb19c8fdc4b5ff3f5ed39b6958b1ac6aab0d41a39b00b15eafa9f3dab4e405 buildlogsarchiver stdout | 2025-09-26 08:36:45,534 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} securityworker stdout | 2025-09-26 08:36:45,551 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "POST /indexer/api/v1/index_report HTTP/1.1" 201 None securityworker stdout | 2025-09-26 08:36:45,562 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) securityworker stdout | 2025-09-26 08:36:45,563 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) securityworker stdout | 2025-09-26 08:36:45,564 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:36:45,564 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/matcher/api/v1/vulnerability_report/sha256:cfdb19c8fdc4b5ff3f5ed39b6958b1ac6aab0d41a39b00b15eafa9f3dab4e405 gunicorn-registry stdout | 2025-09-26 08:36:45,599 [258] [DEBUG] [app] Starting request: urn:request:cdee874a-2934-4173-b19b-b717aef385d7 (/v2/testorg/alpine/blobs/sha256:48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:45,599 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:45,599 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:45,599 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:45,601 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:45,601 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:45,601 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:45,601 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:45,601 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:45,602 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,604 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,605 [258] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:45,605 [258] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07_2 gunicorn-registry stdout | 2025-09-26 08:36:45,605 [258] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:45,606 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,607 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,608 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,609 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,610 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,611 [258] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07_2: None gunicorn-registry stdout | 2025-09-26 08:36:45,611 [258] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07_2: None gunicorn-registry stdout | 2025-09-26 08:36:45,612 [258] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:45,613 [258] [DEBUG] [app] Ending request: urn:request:cdee874a-2934-4173-b19b-b717aef385d7 (/v2/testorg/alpine/blobs/sha256:48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:cdee874a-2934-4173-b19b-b717aef385d7', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07', 'path': '/v2/testorg/alpine/blobs/sha256:48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:45,613 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:45,613 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:45,613 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:45 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:45 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.015 1714 0.015) gunicorn-registry stdout | 2025-09-26 08:36:45,654 [251] [DEBUG] [app] Starting request: urn:request:c9b755f6-d423-436b-b7e4-1dcc5369e8c9 (/v2/testorg/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:45,654 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:45,654 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:45,654 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:45,655 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:45,655 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:45,655 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:45,655 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:45,655 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:45,657 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,658 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,659 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,660 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,661 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,662 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,663 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:45,664 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,665 [251] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [2, '84b70689-dfff-4410-bfdc-8ebc2e0ecbe8', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 36, 45, 664979)]) gunicorn-registry stdout | 2025-09-26 08:36:45,667 [251] [DEBUG] [app] Ending request: urn:request:c9b755f6-d423-436b-b7e4-1dcc5369e8c9 (/v2/testorg/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:c9b755f6-d423-436b-b7e4-1dcc5369e8c9', 'remote_addr': '10.131.2.20', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/', 'path': '/v2/testorg/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:45,667 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:45,667 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:45,667 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:45 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:45 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.014 1693 0.014) gunicorn-registry stdout | 2025-09-26 08:36:45,708 [251] [DEBUG] [app] Starting request: urn:request:f891cc84-fbc4-4a21-921a-5eb7eba8dbb6 (/v2/testorg/alpine/blobs/uploads/84b70689-dfff-4410-bfdc-8ebc2e0ecbe8) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:45,708 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '84b70689-dfff-4410-bfdc-8ebc2e0ecbe8', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:45,708 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:45,708 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:45,709 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:45,709 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:45,709 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:45,709 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:45,709 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:45,710 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,711 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,712 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,713 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,714 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,715 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,716 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,717 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:45,718 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['84b70689-dfff-4410-bfdc-8ebc2e0ecbe8', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,719 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:45,719 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:45,719 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:45,721 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:45,721 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:45,721 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,722 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,722 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,722 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,722 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,722 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,722 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,722 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,722 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:45,722 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:45,722 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:45,722 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:45,723 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,723 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,723 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,723 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:45,723 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,723 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,723 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,723 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,723 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:45,723 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083645Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:45,723 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083645Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | f5709477a8ce68cdf0cd6feb9a04921b24893cd65e98b9dc8c6f87f05c71ac54 gunicorn-registry stdout | 2025-09-26 08:36:45,723 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 713e3d4beb5f119ad48ce73a05396e3bdc5103c3d61d2d8db668ac8663a3a9bd gunicorn-registry stdout | 2025-09-26 08:36:45,723 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,724 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:45,724 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:45,730 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:45,730 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8pi5-erggcb-d4', 'x-amz-id-2': 'mg0l8pi5-erggcb-d4', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:45 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:45,730 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de568d6509dd73ec60008f933ba' gunicorn-registry stdout | 2025-09-26 08:36:45,730 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,730 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:45,730 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,730 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8pi5-erggcb-d4', 'HostId': 'mg0l8pi5-erggcb-d4', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8pi5-erggcb-d4', 'x-amz-id-2': 'mg0l8pi5-erggcb-d4', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:45 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5', 'UploadId': '68d6509dd73ec60008f933ba'} gunicorn-registry stdout | 2025-09-26 08:36:45,731 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:45,732 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:36:45,732 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:36:45,732 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5', 'UploadId': '68d6509dd73ec60008f933ba', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89f8090>, 'ContentLength': 241} gunicorn-registry stdout | 2025-09-26 08:36:45,732 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,732 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,732 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,732 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,732 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,732 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,732 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,732 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,732 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:45,732 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:45,732 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:45,732 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:45,733 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,733 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,733 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:36:45,733 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,733 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,733 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5', 'query_string': {'uploadId': '68d6509dd73ec60008f933ba', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '241', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'FV1OwyK9kGA3hbNgrKrh1A==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b89f8090>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5?uploadId=68d6509dd73ec60008f933ba&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5', 'UploadId': '68d6509dd73ec60008f933ba', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89f8090>, 'ContentLength': 241}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:45,733 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,733 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,733 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,733 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,733 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:45,733 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5 gunicorn-registry stdout | partNumber=1&uploadId=68d6509dd73ec60008f933ba gunicorn-registry stdout | content-length:241 gunicorn-registry stdout | content-md5:FV1OwyK9kGA3hbNgrKrh1A== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083645Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:45,733 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083645Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | b9244e3033fe576f0e0f5b77f77807529b27f3ef94360c1a1fd0ee101fe6cccf gunicorn-registry stdout | 2025-09-26 08:36:45,733 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 6513c674df068bd7abc45fb2227a4396f2bd09021a4b1b97f5d7bd93022cbcf2 gunicorn-registry stdout | 2025-09-26 08:36:45,733 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,733 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:45,734 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:45,735 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:45,736 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:36:45,821 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5?uploadId=68d6509dd73ec60008f933ba&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:45,821 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8pif-exhhdy-nos', 'x-amz-id-2': 'mg0l8pif-exhhdy-nos', 'ETag': '"155d4ec322bd90603785b360acaae1d4"', 'Date': 'Fri, 26 Sep 2025 08:36:45 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:36:45,821 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:45,821 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,821 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:45,821 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,821 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8pif-exhhdy-nos', 'HostId': 'mg0l8pif-exhhdy-nos', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8pif-exhhdy-nos', 'x-amz-id-2': 'mg0l8pif-exhhdy-nos', 'etag': '"155d4ec322bd90603785b360acaae1d4"', 'date': 'Fri, 26 Sep 2025 08:36:45 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"155d4ec322bd90603785b360acaae1d4"'} gunicorn-registry stdout | 2025-09-26 08:36:45,822 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5', 'UploadId': '68d6509dd73ec60008f933ba', 'MultipartUpload': {'Parts': [{'ETag': '"155d4ec322bd90603785b360acaae1d4"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:36:45,822 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,822 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,822 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,822 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,822 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,822 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,822 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,822 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:45,822 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:45,822 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:45,822 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:45,823 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,823 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,823 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,823 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5', 'query_string': {'uploadId': '68d6509dd73ec60008f933ba'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"155d4ec322bd90603785b360acaae1d4"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5?uploadId=68d6509dd73ec60008f933ba', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5', 'UploadId': '68d6509dd73ec60008f933ba', 'MultipartUpload': {'Parts': [{'ETag': '"155d4ec322bd90603785b360acaae1d4"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:45,823 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,823 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,823 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,823 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,823 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:45,823 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5 gunicorn-registry stdout | uploadId=68d6509dd73ec60008f933ba gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:7e00d440793118c96e779f5adb658056a6ce786a39769a1320cc5801a340a6b9 gunicorn-registry stdout | x-amz-date:20250926T083645Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 7e00d440793118c96e779f5adb658056a6ce786a39769a1320cc5801a340a6b9 gunicorn-registry stdout | 2025-09-26 08:36:45,823 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083645Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | d03c7e6cda74ae77e46c468f3fc95ecb4a371bb23f793f65320ff3ac2172dbbb gunicorn-registry stdout | 2025-09-26 08:36:45,823 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | bc90d8b727a829b0ee0311beaa022a13a811e54043491d63e7cd0ce6e9800d78 gunicorn-registry stdout | 2025-09-26 08:36:45,823 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,824 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:45,824 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:45,838 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5?uploadId=68d6509dd73ec60008f933ba HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:36:45,838 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8pkx-geu5yy-15ql', 'x-amz-id-2': 'mg0l8pkx-geu5yy-15ql', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:36:45 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:45,838 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5"3121b88a3c6c2de99e86fe4710f17176-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5?uploadId=68d6509dd73ec60008f933ba' gunicorn-registry stdout | 2025-09-26 08:36:45,838 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,838 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:45,839 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:45,839 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:45,839 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8pkx-geu5yy-15ql', 'HostId': 'mg0l8pkx-geu5yy-15ql', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8pkx-geu5yy-15ql', 'x-amz-id-2': 'mg0l8pkx-geu5yy-15ql', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:36:45 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5?uploadId=68d6509dd73ec60008f933ba', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5', 'ETag': '"3121b88a3c6c2de99e86fe4710f17176-1"'} gunicorn-registry stdout | 2025-09-26 08:36:45,839 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:45,840 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:45,840 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 241 bytes to blob 84b70689-dfff-4410-bfdc-8ebc2e0ecbe8 took 0.1207892894744873 seconds gunicorn-registry stdout | 2025-09-26 08:36:45,840 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['84b70689-dfff-4410-bfdc-8ebc2e0ecbe8', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:45,841 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, '84b70689-dfff-4410-bfdc-8ebc2e0ecbe8', 241, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwMWYwZDI3MzI2NTk3MjczNTk1ZDQ2Yzc1NTc3NzFhZjJmM2JkOGI5MDg1M2QxIl19fWRkYzQ4MmJlOTAyYTZhYzEAAAAAAAAAAAYAAAAAAADPADj0jw/kSReN8EuO05Nd0xm0Wi6y+V3+WLTeZ+4kCpRiLg==', 9, '{"chunks": [["uploads/56edcb5b-1f5a-4c79-90d7-ca7350ad3de5", 0, 241]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 36, 45, 664979), None, None, 21]) gunicorn-registry stdout | 2025-09-26 08:36:45,843 [251] [DEBUG] [app] Ending request: urn:request:f891cc84-fbc4-4a21-921a-5eb7eba8dbb6 (/v2/testorg/alpine/blobs/uploads/84b70689-dfff-4410-bfdc-8ebc2e0ecbe8) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:f891cc84-fbc4-4a21-921a-5eb7eba8dbb6', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/84b70689-dfff-4410-bfdc-8ebc2e0ecbe8', 'path': '/v2/testorg/alpine/blobs/uploads/84b70689-dfff-4410-bfdc-8ebc2e0ecbe8', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:45,843 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:45,844 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:45,844 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:45 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/84b70689-dfff-4410-bfdc-8ebc2e0ecbe8 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:45 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/84b70689-dfff-4410-bfdc-8ebc2e0ecbe8 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.138 2013 0.137) gunicorn-registry stdout | 2025-09-26 08:36:46,065 [251] [DEBUG] [app] Starting request: urn:request:9ff54564-c723-4223-8458-d0eb3b041927 (/v2/testorg/alpine/manifests/sha256:256ffbe4e66db68c5d3ecd54b64e5b341158a10659859a838647d1432ea6a30a) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:46,065 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'manifest_ref': 'sha256:256ffbe4e66db68c5d3ecd54b64e5b341158a10659859a838647d1432ea6a30a', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:46,066 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:46,066 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:46,066 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:46,066 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:46,067 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:46,067 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:46,067 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:46,068 [251] [DEBUG] [data.cache.cache_key] Loading repository lookup from cache_key: repository_lookup_testorg_alpine gunicorn-registry stdout | 2025-09-26 08:36:46,068 [251] [DEBUG] [data.cache.impl] Checking cache for key repository_lookup_testorg_alpine gunicorn-registry stdout | 2025-09-26 08:36:46,068 [251] [DEBUG] [data.cache.impl] Found result in cache for key repository_lookup_testorg_alpine: {'id': 2, 'visibility': {'id': 2, 'name': 'private'}, 'kind': {'id': 1, 'name': 'image'}, 'state': 0, 'namespace_user': {'stripe_id': None}} gunicorn-registry stdout | 2025-09-26 08:36:46,069 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:256ffbe4e66db68c5d3ecd54b64e5b341158a10659859a838647d1432ea6a30a', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,071 [251] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL ((SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "uploadedblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1") UNION ALL (SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "uploadedblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q2"))', [2, 'sha256:48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07', 1, 2, 'sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1', 1, 2, 'sha256:3032b259f8109e3849ca23c23e8a8e9749a57d7ec26c7d53181220442b7fd7ba', 1]) gunicorn-registry stdout | 2025-09-26 08:36:46,073 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."digest" = %s) AND ("t1"."repository_id" = %s)) LIMIT %s OFFSET %s', ['sha256:256ffbe4e66db68c5d3ecd54b64e5b341158a10659859a838647d1432ea6a30a', 2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,074 [251] [DEBUG] [peewee] ('INSERT INTO "manifest" ("repository_id", "digest", "media_type_id", "manifest_bytes", "config_media_type", "layers_compressed_size", "subject", "subject_backfilled", "artifact_type", "artifact_type_backfilled") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifest"."id"', [2, 'sha256:256ffbe4e66db68c5d3ecd54b64e5b341158a10659859a838647d1432ea6a30a', 18, '{\n "schemaVersion": 2,\n "mediaType": "application/vnd.oci.image.manifest.v1+json",\n "config": {\n "mediaType": "application/vnd.oci.image.config.v1+json",\n "digest": "sha256:48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07",\n "size": 241\n },\n "layers": [\n {\n "mediaType": "application/vnd.in-toto+json",\n "digest": "sha256:3032b259f8109e3849ca23c23e8a8e9749a57d7ec26c7d53181220442b7fd7ba",\n "size": 80992,\n "annotations": {\n "in-toto.io/predicate-type": "https://spdx.dev/Document"\n }\n },\n {\n "mediaType": "application/vnd.in-toto+json",\n "digest": "sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1",\n "size": 5719,\n "annotations": {\n "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2"\n }\n }\n ]\n}', 'application/vnd.oci.image.config.v1+json', 86711, None, True, None, True]) gunicorn-registry stdout | 2025-09-26 08:36:46,075 [251] [DEBUG] [peewee] ('INSERT INTO "manifestblob" ("repository_id", "manifest_id", "blob_id") VALUES (%s, %s, %s), (%s, %s, %s), (%s, %s, %s) RETURNING "manifestblob"."id"', [2, 7, 20, 2, 7, 21, 2, 7, 22]) gunicorn-registry stdout | 2025-09-26 08:36:46,075 [251] [DEBUG] [peewee] ('SELECT "t1"."namespace_user_id" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,076 [251] [DEBUG] [peewee] ('SELECT 1 FROM "user" AS "t1" WHERE ((("t1"."id" = %s) AND "t1"."enabled") AND NOT "t1"."robot") LIMIT %s', [3, 1]) gunicorn-registry stdout | 2025-09-26 08:36:46,077 [251] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [3, 22, 7, 1]) gunicorn-registry stdout | 2025-09-26 08:36:46,078 [251] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [3, 20, 7, 1]) gunicorn-registry stdout | 2025-09-26 08:36:46,079 [251] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [3, 21, 7, 1]) gunicorn-registry stdout | 2025-09-26 08:36:46,079 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,080 [251] [INFO] [data.model.quota] updating namespace size for manifest 7 in namespace 3, QuotaOperation.ADD 86952 gunicorn-registry stdout | 2025-09-26 08:36:46,080 [251] [DEBUG] [peewee] ('UPDATE "quotanamespacesize" SET "size_bytes" = ("quotanamespacesize"."size_bytes" + %s) WHERE ("quotanamespacesize"."namespace_user_id" = %s)', [86952, 3]) gunicorn-registry stdout | 2025-09-26 08:36:46,080 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotarepositorysize" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,081 [251] [INFO] [data.model.quota] updating repository size for manifest 7 in repository 2, QuotaOperation.ADD 86952 gunicorn-registry stdout | 2025-09-26 08:36:46,081 [251] [DEBUG] [peewee] ('UPDATE "quotarepositorysize" SET "size_bytes" = ("quotarepositorysize"."size_bytes" + %s) WHERE ("quotarepositorysize"."repository_id" = %s)', [86952, 2]) gunicorn-registry stdout | 2025-09-26 08:36:46,082 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [7, None, 1758879406081, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,082 [251] [DEBUG] [peewee] ('INSERT INTO "tag" ("name", "repository_id", "manifest_id", "lifetime_start_ms", "lifetime_end_ms", "immutable", "hidden", "reversion", "tag_kind_id") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "tag"."id"', ['$temp-a70ba834-e142-4f20-b06f-3c92d5c2a497', 2, 7, 1758875806081, 1758879406081, False, True, False, 1]) gunicorn-registry stdout | 2025-09-26 08:36:46,084 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,085 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['14468196-ae3a-4490-a631-eab752452e6a']) gunicorn-registry stdout | 2025-09-26 08:36:46,086 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:46,087 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:46,087 [251] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/48/48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07'} gunicorn-registry stdout | 2025-09-26 08:36:46,087 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,087 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,088 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,088 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:46,088 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,088 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,088 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:46,088 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:46,088 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:46,088 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:46,088 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:46,088 [251] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,088 [251] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,088 [251] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,088 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/48/48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/48/48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/48/48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/48/48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:46,088 [251] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:46,088 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:46,088 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,088 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,089 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:46,089 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/48/48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083646Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:46,089 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083646Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 67c66fbaf08904661fb85457326b7d900aa74a211b8842d32ad5865318f810c8 gunicorn-registry stdout | 2025-09-26 08:36:46,089 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 8b5011696abb13b41c4f23c7201e04e41f40bceca6f50f6e28639e252fae7dfe gunicorn-registry stdout | 2025-09-26 08:36:46,089 [251] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,089 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:46,089 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:46,147 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/48/48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07 HTTP/1.1" 200 241 gunicorn-registry stdout | 2025-09-26 08:36:46,147 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8psb-49rsfm-sm', 'x-amz-id-2': 'mg0l8psb-49rsfm-sm', 'ETag': '"3121b88a3c6c2de99e86fe4710f17176-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:45 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:46 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:46,147 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:36:46,147 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,147 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:46,148 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:46,148 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8psb-49rsfm-sm', 'HostId': 'mg0l8psb-49rsfm-sm', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8psb-49rsfm-sm', 'x-amz-id-2': 'mg0l8psb-49rsfm-sm', 'etag': '"3121b88a3c6c2de99e86fe4710f17176-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:45 GMT', 'content-type': 'application/octet-stream', 'content-length': '241', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:36:46 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 45, tzinfo=tzutc()), 'ContentLength': 241, 'ETag': '"3121b88a3c6c2de99e86fe4710f17176-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:36:46,150 [251] [DEBUG] [app] Ending request: urn:request:9ff54564-c723-4223-8458-d0eb3b041927 (/v2/testorg/alpine/manifests/sha256:256ffbe4e66db68c5d3ecd54b64e5b341158a10659859a838647d1432ea6a30a) {'endpoint': 'v2.write_manifest_by_digest', 'request_id': 'urn:request:9ff54564-c723-4223-8458-d0eb3b041927', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/manifests/sha256:256ffbe4e66db68c5d3ecd54b64e5b341158a10659859a838647d1432ea6a30a', 'path': '/v2/testorg/alpine/manifests/sha256:256ffbe4e66db68c5d3ecd54b64e5b341158a10659859a838647d1432ea6a30a', 'parameters': {}, 'json_body': {'schemaVersion': 2, 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'config': {'mediaType': 'application/vnd.oci.image.config.v1+json', 'digest': 'sha256:48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07', 'size': 241}, 'layers': [{'mediaType': 'application/vnd.in-toto+json', 'digest': 'sha256:3032b259f8109e3849ca23c23e8a8e9749a57d7ec26c7d53181220442b7fd7ba', 'size': 80992, 'annotations': {'in-toto.io/predicate-type': 'https://spdx.dev/Document'}}, {'mediaType': 'application/vnd.in-toto+json', 'digest': 'sha256:90d9ddc482be902a6ac1f0d27326597273595d46c7557771af2f3bd8b90853d1', 'size': 5719, 'annotations': {'in-toto.io/predicate-type': 'https://slsa.dev/provenance/v0.2'}}]}, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:46,150 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:46,150 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:46 +0000] "PUT /v2/testorg/alpine/manifests/sha256:256ffbe4e66db68c5d3ecd54b64e5b341158a10659859a838647d1432ea6a30a HTTP/1.1" 201 2 "-" "skopeo/1.14.5" (0.087 2657 0.087) gunicorn-registry stdout | 2025-09-26 08:36:46,151 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:46 +0000] "PUT /v2/testorg/alpine/manifests/sha256:256ffbe4e66db68c5d3ecd54b64e5b341158a10659859a838647d1432ea6a30a HTTP/1.1" 201 2 "-" "skopeo/1.14.5" securityworker stdout | 2025-09-26 08:36:46,216 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /matcher/api/v1/vulnerability_report/sha256:cfdb19c8fdc4b5ff3f5ed39b6958b1ac6aab0d41a39b00b15eafa9f3dab4e405 HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:36:46,250 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Attempting to create notifications for manifest #1 securityworker stdout | 2025-09-26 08:36:46,251 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "tag" AS "t1" WHERE ((("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" > %s))) AND ("t1"."hidden" = %s)) LIMIT %s', [1, None, 1758875806251, False, 100]) securityworker stdout | 2025-09-26 08:36:46,252 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Created notification with event_data: {'tags': ['redis'], 'vulnerable_index_report_created': 'true', 'vulnerability': {'id': '1177421', 'description': 'runc vulnerable to container breakout through process.cwd trickery and leaked fds', 'link': 'https://github.com/opencontainers/runc/security/advisories/GHSA-xr7r-f8xq-vfvv https://nvd.nist.gov/vuln/detail/CVE-2024-21626 https://github.com/opencontainers/runc/commit/02120488a4c0fc487d1ed2867e901eeed7ce8ecf https://github.com/opencontainers/runc https://github.com/opencontainers/runc/releases/tag/v1.1.12 https://lists.debian.org/debian-lts-announce/2024/02/msg00005.html https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/2NLXNE23Q5ESQUAI22Z7A63JX2WMPJ2J https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/SYMO3BANINS6RGFQFKPRG4FIOJ7GWYTL http://packetstormsecurity.com/files/176993/runc-1.1.11-File-Descriptor-Leak-Privilege-Escalation.html http://www.openwall.com/lists/oss-security/2024/02/01/1 http://www.openwall.com/lists/oss-security/2024/02/02/3', 'priority': 'CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H', 'has_fix': True}} securityworker stdout | 2025-09-26 08:36:46,253 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) securityworker stdout | 2025-09-26 08:36:46,254 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) securityworker stdout | 2025-09-26 08:36:46,256 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."repository_id", "t1"."event_id", "t1"."method_id", "t1"."title", "t1"."config_json", "t1"."event_config_json", "t1"."number_of_failures", "t1"."last_ran_ms", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state", "t3"."id", "t3"."uuid", "t3"."username", "t3"."password_hash", "t3"."email", "t3"."verified", "t3"."stripe_id", "t3"."organization", "t3"."robot", "t3"."invoice_email", "t3"."invalid_login_attempts", "t3"."last_invalid_login", "t3"."removed_tag_expiration_s", "t3"."enabled", "t3"."invoice_email_address", "t3"."given_name", "t3"."family_name", "t3"."company", "t3"."location", "t3"."maximum_queued_builds_count", "t3"."creation_date", "t3"."last_accessed" FROM "repositorynotification" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") INNER JOIN "user" AS "t3" ON ("t2"."namespace_user_id" = "t3"."id") INNER JOIN "externalnotificationevent" AS "t4" ON ("t1"."event_id" = "t4"."id") WHERE ((("t3"."username" = %s) AND ("t2"."name" = %s)) AND ("t4"."name" = %s))', ['quayorg', 'quayrepo', 'vulnerability_found']) securityworker stdout | 2025-09-26 08:36:46,259 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "tag" AS "t1" WHERE ((("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" > %s))) AND ("t1"."hidden" = %s)) LIMIT %s', [1, None, 1758875806259, False, 100]) securityworker stdout | 2025-09-26 08:36:46,260 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Created notification with event_data: {'tags': ['redis'], 'vulnerable_index_report_created': 'true', 'vulnerability': {'id': '1166706', 'description': 'Opencontainers runc Incorrect Authorization vulnerability', 'link': 'https://nvd.nist.gov/vuln/detail/CVE-2023-27561 https://github.com/opencontainers/runc/issues/2197#issuecomment-1437617334 https://github.com/opencontainers/runc/issues/3751 https://github.com/opencontainers/runc/pull/3785 https://security.netapp.com/advisory/ntap-20241206-0004 https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/I6BF24VCZRFTYBTT3T7HDZUOTKOTNPLZ https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/FYVE3GB4OG3BNT5DLQHYO4M5SXX33AQ5 https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/FNB2UEDIIJCRQW4WJLZOPQJZXCVSXMLD https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/DHGVGGMKGZSJ7YO67TGGPFEHBYMS63VF https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/ANUGDBJ7NBUMSUFZUSKU3ZMQYZ2Z3STN https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/I6BF24VCZRFTYBTT3T7HDZUOTKOTNPLZ https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/FYVE3GB4OG3BNT5DLQHYO4M5SXX33AQ5 https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/FNB2UEDIIJCRQW4WJLZOPQJZXCVSXMLD https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/DHGVGGMKGZSJ7YO67TGGPFEHBYMS63VF https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/ANUGDBJ7NBUMSUFZUSKU3ZMQYZ2Z3STN https://lists.debian.org/debian-lts-announce/2023/03/msg00023.html https://github.com/opencontainers/runc/releases/tag/v1.1.5 https://github.com/opencontainers/runc https://gist.github.com/LiveOverflow/c937820b688922eb127fb760ce06dab9', 'priority': 'CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H', 'has_fix': True}} securityworker stdout | 2025-09-26 08:36:46,261 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."repository_id", "t1"."event_id", "t1"."method_id", "t1"."title", "t1"."config_json", "t1"."event_config_json", "t1"."number_of_failures", "t1"."last_ran_ms", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state", "t3"."id", "t3"."uuid", "t3"."username", "t3"."password_hash", "t3"."email", "t3"."verified", "t3"."stripe_id", "t3"."organization", "t3"."robot", "t3"."invoice_email", "t3"."invalid_login_attempts", "t3"."last_invalid_login", "t3"."removed_tag_expiration_s", "t3"."enabled", "t3"."invoice_email_address", "t3"."given_name", "t3"."family_name", "t3"."company", "t3"."location", "t3"."maximum_queued_builds_count", "t3"."creation_date", "t3"."last_accessed" FROM "repositorynotification" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") INNER JOIN "user" AS "t3" ON ("t2"."namespace_user_id" = "t3"."id") INNER JOIN "externalnotificationevent" AS "t4" ON ("t1"."event_id" = "t4"."id") WHERE ((("t3"."username" = %s) AND ("t2"."name" = %s)) AND ("t4"."name" = %s))', ['quayorg', 'quayrepo', 'vulnerability_found']) securityworker stdout | 2025-09-26 08:36:46,263 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE ("manifestsecuritystatus"."manifest_id" = %s)', [1]) securityworker stdout | 2025-09-26 08:36:46,264 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [1, 1, 2, '""', datetime.datetime(2025, 9, 26, 8, 36, 46, 264054), '37b46b4a70b6f1a19d5e4e18d21f57ff', 4, '{}']) securityworker stdout | 2025-09-26 08:36:46,267 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) securityworker stdout | 2025-09-26 08:36:46,269 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 1, 0]) securityworker stdout | 2025-09-26 08:36:46,270 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['c70b9ca4-ad69-46a9-b948-303fc64ae9fe']) securityworker stdout | 2025-09-26 08:36:46,270 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:36:46,271 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:36:46,272 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61'} securityworker stdout | 2025-09-26 08:36:46,272 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,272 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,272 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,272 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,272 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,272 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:46,272 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:46,272 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:46,272 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:46,272 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:46,272 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:46,272 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,272 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,272 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,272 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:36:46,273 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,273 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,273 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,273 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,273 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:36:46,273 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61 securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083646Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:36:46,273 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083646Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | a90403f4e6819b4a82e08ba0bb732315b24cada5436b786b091aa32f0bc7d155 securityworker stdout | 2025-09-26 08:36:46,273 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | 06bd876209a017677fb9eb1cf73cfa32e12190640513fd8ef026017595d00e11 securityworker stdout | 2025-09-26 08:36:46,273 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,273 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:36:46,274 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:36:46,288 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61 HTTP/1.1" 200 581 securityworker stdout | 2025-09-26 08:36:46,289 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8pxf-7bckz0-9v1', 'x-amz-id-2': 'mg0l8pxf-7bckz0-9v1', 'ETag': '"c953f11b655c667e87bf2e6d854fb992-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:34 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '581', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:46 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:36:46,289 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:36:46,289 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,289 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:36:46,289 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,289 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8pxf-7bckz0-9v1', 'HostId': 'mg0l8pxf-7bckz0-9v1', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8pxf-7bckz0-9v1', 'x-amz-id-2': 'mg0l8pxf-7bckz0-9v1', 'etag': '"c953f11b655c667e87bf2e6d854fb992-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:34 GMT', 'content-type': 'application/octet-stream', 'content-length': '581', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:36:46 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 34, tzinfo=tzutc()), 'ContentLength': 581, 'ETag': '"c953f11b655c667e87bf2e6d854fb992-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } securityworker stdout | 2025-09-26 08:36:46,291 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4', 1, 0]) securityworker stdout | 2025-09-26 08:36:46,293 [86] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL (SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1")', [2, 'sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 1, 2, 'sha256:fe07684b16b82247c3539ed86a65ff37a76138ec25d380bd80c869a1a4c73236', 1]) securityworker stdout | 2025-09-26 08:36:46,294 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['402d10f8-4d79-4a8f-94a8-cc0763840db4']) securityworker stdout | 2025-09-26 08:36:46,295 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:46,296 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s)', [2]) securityworker stdout | 2025-09-26 08:36:46,296 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) securityworker stdout | 2025-09-26 08:36:46,297 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:36:46,298 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Indexing manifest [2] 3/alpine@sha256:08001109a7d679fe33b04fa51d681bd40b975d8f5cea8c3ef6c0eccb6a7338ce securityworker stdout | 2025-09-26 08:36:46,298 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,298 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,298 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,298 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,298 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,298 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:46,298 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:46,298 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:46,299 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:46,299 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:46,299 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:46,299 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,299 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,299 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:46,299 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:46,299 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876406 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fe/fe07684b16b82247c3539ed86a65ff37a76138ec25d380bd80c869a1a4c73236 securityworker stdout | 2025-09-26 08:36:46,305 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQTJMQ0pwWVhRaU9qRTNOVGc0TnpVNE1EWXNJbVY0Y0NJNk1UYzFPRGczTmpRd05pd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5bVpTOW1aVEEzTmpnMFlqRTJZamd5TWpRM1l6TTFNemxsWkRnMllUWTFabVl6TjJFM05qRXpPR1ZqTWpWa016Z3dZbVE0TUdNNE5qbGhNV0UwWXpjek1qTTJQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFMYTJsemMzTkthVEZpZDJKVGVWRXdRVlUzTlZaSWIxaDRlVEFsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRBMklpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuY2V3S3B1VmJwWHV4MUp3N2ZzQ3FhWnY3YVlGVl9DVG02S3F4RGdreWgwcTc1SWJGeUM1X2dsSktiMEtrZGozVno5TmwtdTBMbW95OXFLa1NXWUhQY0RIUFU5eE14SktXenRQejN3ckZxVlYwOW9LSVQ1X0lXcHpVWktkclYwcUpaSTNLSjZOODFUWXFQYXd3WjEwRVBYaW1QNTd6Ri1BZ3RJSG9fV20zQ05nbTZpV0FQSnpmYkJwcmRLQ0JxbFBNUWxHVGVUZy1CNXRLb2dXdHZvUVBvT3hQS1dWYlQxTkxuQmZta2dlLXVLekdGMFpRS1NscmVmSi1LakQ1aHl6dGJ1dm1KTVM4OEd6N3FISDFvZ1FOcllvTUY1cG05Vng1R0RXci1aRGRNV1hVRGdieGtMOWEwRFRYcWxCTWtFaHRRRFMxamlHcko4SXdibVZFV0lnM1ln/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fe/fe07684b16b82247c3539ed86a65ff37a76138ec25d380bd80c869a1a4c73236?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=KkisssJi1bwbSyQ0AU75VHoXxy0%3D&Expires=1758876406 securityworker stdout | 2025-09-26 08:36:46,305 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,305 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,305 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,305 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,305 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,306 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:46,306 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:46,306 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:46,306 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:46,306 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:46,306 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:46,306 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,306 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,306 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:46,306 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:46,306 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876406 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fe/fe07684b16b82247c3539ed86a65ff37a76138ec25d380bd80c869a1a4c73236 securityworker stdout | 2025-09-26 08:36:46,312 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQTJMQ0pwWVhRaU9qRTNOVGc0TnpVNE1EWXNJbVY0Y0NJNk1UYzFPRGczTmpRd05pd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5bVpTOW1aVEEzTmpnMFlqRTJZamd5TWpRM1l6TTFNemxsWkRnMllUWTFabVl6TjJFM05qRXpPR1ZqTWpWa016Z3dZbVE0TUdNNE5qbGhNV0UwWXpjek1qTTJQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFMYTJsemMzTkthVEZpZDJKVGVWRXdRVlUzTlZaSWIxaDRlVEFsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRBMklpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuY2V3S3B1VmJwWHV4MUp3N2ZzQ3FhWnY3YVlGVl9DVG02S3F4RGdreWgwcTc1SWJGeUM1X2dsSktiMEtrZGozVno5TmwtdTBMbW95OXFLa1NXWUhQY0RIUFU5eE14SktXenRQejN3ckZxVlYwOW9LSVQ1X0lXcHpVWktkclYwcUpaSTNLSjZOODFUWXFQYXd3WjEwRVBYaW1QNTd6Ri1BZ3RJSG9fV20zQ05nbTZpV0FQSnpmYkJwcmRLQ0JxbFBNUWxHVGVUZy1CNXRLb2dXdHZvUVBvT3hQS1dWYlQxTkxuQmZta2dlLXVLekdGMFpRS1NscmVmSi1LakQ1aHl6dGJ1dm1KTVM4OEd6N3FISDFvZ1FOcllvTUY1cG05Vng1R0RXci1aRGRNV1hVRGdieGtMOWEwRFRYcWxCTWtFaHRRRFMxamlHcko4SXdibVZFV0lnM1ln/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fe/fe07684b16b82247c3539ed86a65ff37a76138ec25d380bd80c869a1a4c73236?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=KkisssJi1bwbSyQ0AU75VHoXxy0%3D&Expires=1758876406 securityworker stdout | 2025-09-26 08:36:46,312 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,312 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,312 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,312 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,312 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,312 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:46,312 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:46,312 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:46,312 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:46,312 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:46,312 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:46,313 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,313 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,313 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:46,313 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:46,313 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876406 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:46,321 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQTJMQ0pwWVhRaU9qRTNOVGc0TnpVNE1EWXNJbVY0Y0NJNk1UYzFPRGczTmpRd05pd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFOWmtaeE4wbEhVMjlJZUVRd01URkJRM3AzYkdoUWMyVkpWbk1sTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRBMklpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRXdMNlpyYTdoeGsxUDdOOS0zSVZZM1kyOFFaWmNlY1ZrSnJ2cThlUUJyV29KV05yRF93T1NKeW1BZXQzanFXWEV1RW1HaVpBZjdKRl85dmdFRnU0YmUzdmw1dW1FVFBIZG5KMFVWSnktVG95QUNFUFhyQVVvWDhBLXFISEE4VWVSeUtCNVZ2ZXBtdElQRTd0SXoxNno5Y2JIaXpTRFZ5YUZvRlB0X1A4V2lKS0hXTjJ6QVZpa3hHeHFZU1ItTkNJcmdwNmFNZFFjN21aMTl2NUdCRWZ4NjJJd2djUWpDbmtBN1FPMTBDZ1hlQ0NmQW1XZDRwSm5ZNjR4Z05hVFNDMHdUSm5PMkNCaUJLYkZXTTJNak9JOU5CMEhEMFNVWVRRVUQ3MXJuMGF4Y256bEZyWDdOODZzWmgxTU1oMXNPU3RRNkxyV0RLeE5QblphQXhTSG84dW9R/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=MfFq7IGSoHxD011ACzwlhPseIVs%3D&Expires=1758876406 securityworker stdout | 2025-09-26 08:36:46,321 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,321 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,321 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,321 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,321 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,321 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:46,321 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:46,322 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:46,322 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:46,322 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:46,322 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:46,322 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,322 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,322 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:46,322 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:46,322 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876406 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:46,330 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQTJMQ0pwWVhRaU9qRTNOVGc0TnpVNE1EWXNJbVY0Y0NJNk1UYzFPRGczTmpRd05pd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFOWmtaeE4wbEhVMjlJZUVRd01URkJRM3AzYkdoUWMyVkpWbk1sTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRBMklpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRXdMNlpyYTdoeGsxUDdOOS0zSVZZM1kyOFFaWmNlY1ZrSnJ2cThlUUJyV29KV05yRF93T1NKeW1BZXQzanFXWEV1RW1HaVpBZjdKRl85dmdFRnU0YmUzdmw1dW1FVFBIZG5KMFVWSnktVG95QUNFUFhyQVVvWDhBLXFISEE4VWVSeUtCNVZ2ZXBtdElQRTd0SXoxNno5Y2JIaXpTRFZ5YUZvRlB0X1A4V2lKS0hXTjJ6QVZpa3hHeHFZU1ItTkNJcmdwNmFNZFFjN21aMTl2NUdCRWZ4NjJJd2djUWpDbmtBN1FPMTBDZ1hlQ0NmQW1XZDRwSm5ZNjR4Z05hVFNDMHdUSm5PMkNCaUJLYkZXTTJNak9JOU5CMEhEMFNVWVRRVUQ3MXJuMGF4Y256bEZyWDdOODZzWmgxTU1oMXNPU3RRNkxyV0RLeE5QblphQXhTSG84dW9R/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=MfFq7IGSoHxD011ACzwlhPseIVs%3D&Expires=1758876406 securityworker stdout | 2025-09-26 08:36:46,331 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:36:46,331 [86] [DEBUG] [util.secscan.v4.api] POSTing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_report gunicorn-registry stdout | 2025-09-26 08:36:46,416 [251] [DEBUG] [app] Starting request: urn:request:b347ff7c-8ffe-40f6-bfb6-029af9254186 (/v2/testorg/alpine/blobs/sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:46,417 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:46,417 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:46,417 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:46,419 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:46,419 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:46,419 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:46,419 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:46,419 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:46,419 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,421 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,422 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:46,422 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7_2 gunicorn-registry stdout | 2025-09-26 08:36:46,422 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:46,423 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,424 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,424 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,425 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,426 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,427 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7_2: None gunicorn-registry stdout | 2025-09-26 08:36:46,427 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7_2: None gunicorn-registry stdout | 2025-09-26 08:36:46,427 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:46,428 [251] [DEBUG] [app] Ending request: urn:request:b347ff7c-8ffe-40f6-bfb6-029af9254186 (/v2/testorg/alpine/blobs/sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:b347ff7c-8ffe-40f6-bfb6-029af9254186', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 'path': '/v2/testorg/alpine/blobs/sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:46,428 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:46,428 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:46,428 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:46 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:46 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.013 1714 0.013) securityworker stdout | 2025-09-26 08:36:46,455 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /matcher/api/v1/vulnerability_report/sha256:cfdb19c8fdc4b5ff3f5ed39b6958b1ac6aab0d41a39b00b15eafa9f3dab4e405 HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:36:46,491 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Attempting to create notifications for manifest #1 securityworker stdout | 2025-09-26 08:36:46,492 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "tag" AS "t1" WHERE ((("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" > %s))) AND ("t1"."hidden" = %s)) LIMIT %s', [1, None, 1758875806491, False, 100]) securityworker stdout | 2025-09-26 08:36:46,492 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Created notification with event_data: {'tags': ['redis'], 'vulnerable_index_report_created': 'true', 'vulnerability': {'id': '1166706', 'description': 'Opencontainers runc Incorrect Authorization vulnerability', 'link': 'https://nvd.nist.gov/vuln/detail/CVE-2023-27561 https://github.com/opencontainers/runc/issues/2197#issuecomment-1437617334 https://github.com/opencontainers/runc/issues/3751 https://github.com/opencontainers/runc/pull/3785 https://security.netapp.com/advisory/ntap-20241206-0004 https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/I6BF24VCZRFTYBTT3T7HDZUOTKOTNPLZ https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/FYVE3GB4OG3BNT5DLQHYO4M5SXX33AQ5 https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/FNB2UEDIIJCRQW4WJLZOPQJZXCVSXMLD https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/DHGVGGMKGZSJ7YO67TGGPFEHBYMS63VF https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/ANUGDBJ7NBUMSUFZUSKU3ZMQYZ2Z3STN https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/I6BF24VCZRFTYBTT3T7HDZUOTKOTNPLZ https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/FYVE3GB4OG3BNT5DLQHYO4M5SXX33AQ5 https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/FNB2UEDIIJCRQW4WJLZOPQJZXCVSXMLD https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/DHGVGGMKGZSJ7YO67TGGPFEHBYMS63VF https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/ANUGDBJ7NBUMSUFZUSKU3ZMQYZ2Z3STN https://lists.debian.org/debian-lts-announce/2023/03/msg00023.html https://github.com/opencontainers/runc/releases/tag/v1.1.5 https://github.com/opencontainers/runc https://gist.github.com/LiveOverflow/c937820b688922eb127fb760ce06dab9', 'priority': 'CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H', 'has_fix': True}} securityworker stdout | 2025-09-26 08:36:46,494 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."repository_id", "t1"."event_id", "t1"."method_id", "t1"."title", "t1"."config_json", "t1"."event_config_json", "t1"."number_of_failures", "t1"."last_ran_ms", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state", "t3"."id", "t3"."uuid", "t3"."username", "t3"."password_hash", "t3"."email", "t3"."verified", "t3"."stripe_id", "t3"."organization", "t3"."robot", "t3"."invoice_email", "t3"."invalid_login_attempts", "t3"."last_invalid_login", "t3"."removed_tag_expiration_s", "t3"."enabled", "t3"."invoice_email_address", "t3"."given_name", "t3"."family_name", "t3"."company", "t3"."location", "t3"."maximum_queued_builds_count", "t3"."creation_date", "t3"."last_accessed" FROM "repositorynotification" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") INNER JOIN "user" AS "t3" ON ("t2"."namespace_user_id" = "t3"."id") INNER JOIN "externalnotificationevent" AS "t4" ON ("t1"."event_id" = "t4"."id") WHERE ((("t3"."username" = %s) AND ("t2"."name" = %s)) AND ("t4"."name" = %s))', ['quayorg', 'quayrepo', 'vulnerability_found']) securityworker stdout | 2025-09-26 08:36:46,495 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "tag" AS "t1" WHERE ((("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" > %s))) AND ("t1"."hidden" = %s)) LIMIT %s', [1, None, 1758875806495, False, 100]) securityworker stdout | 2025-09-26 08:36:46,497 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Created notification with event_data: {'tags': ['redis'], 'vulnerable_index_report_created': 'true', 'vulnerability': {'id': '1177421', 'description': 'runc vulnerable to container breakout through process.cwd trickery and leaked fds', 'link': 'https://github.com/opencontainers/runc/security/advisories/GHSA-xr7r-f8xq-vfvv https://nvd.nist.gov/vuln/detail/CVE-2024-21626 https://github.com/opencontainers/runc/commit/02120488a4c0fc487d1ed2867e901eeed7ce8ecf https://github.com/opencontainers/runc https://github.com/opencontainers/runc/releases/tag/v1.1.12 https://lists.debian.org/debian-lts-announce/2024/02/msg00005.html https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/2NLXNE23Q5ESQUAI22Z7A63JX2WMPJ2J https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/SYMO3BANINS6RGFQFKPRG4FIOJ7GWYTL http://packetstormsecurity.com/files/176993/runc-1.1.11-File-Descriptor-Leak-Privilege-Escalation.html http://www.openwall.com/lists/oss-security/2024/02/01/1 http://www.openwall.com/lists/oss-security/2024/02/02/3', 'priority': 'CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H', 'has_fix': True}} securityworker stdout | 2025-09-26 08:36:46,498 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."repository_id", "t1"."event_id", "t1"."method_id", "t1"."title", "t1"."config_json", "t1"."event_config_json", "t1"."number_of_failures", "t1"."last_ran_ms", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state", "t3"."id", "t3"."uuid", "t3"."username", "t3"."password_hash", "t3"."email", "t3"."verified", "t3"."stripe_id", "t3"."organization", "t3"."robot", "t3"."invoice_email", "t3"."invalid_login_attempts", "t3"."last_invalid_login", "t3"."removed_tag_expiration_s", "t3"."enabled", "t3"."invoice_email_address", "t3"."given_name", "t3"."family_name", "t3"."company", "t3"."location", "t3"."maximum_queued_builds_count", "t3"."creation_date", "t3"."last_accessed" FROM "repositorynotification" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") INNER JOIN "user" AS "t3" ON ("t2"."namespace_user_id" = "t3"."id") INNER JOIN "externalnotificationevent" AS "t4" ON ("t1"."event_id" = "t4"."id") WHERE ((("t3"."username" = %s) AND ("t2"."name" = %s)) AND ("t4"."name" = %s))', ['quayorg', 'quayrepo', 'vulnerability_found']) securityworker stdout | 2025-09-26 08:36:46,499 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE ("manifestsecuritystatus"."manifest_id" = %s)', [1]) securityworker stdout | 2025-09-26 08:36:46,500 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [1, 1, 2, '""', datetime.datetime(2025, 9, 26, 8, 36, 46, 499984), '37b46b4a70b6f1a19d5e4e18d21f57ff', 4, '{}']) securityworker stdout | 2025-09-26 08:36:46,503 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) securityworker stdout | 2025-09-26 08:36:46,505 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 1, 0]) securityworker stdout | 2025-09-26 08:36:46,506 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['c70b9ca4-ad69-46a9-b948-303fc64ae9fe']) securityworker stdout | 2025-09-26 08:36:46,507 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:36:46,508 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:36:46,508 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61'} securityworker stdout | 2025-09-26 08:36:46,508 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,508 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,508 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,508 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,508 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,508 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:46,508 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:46,508 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:46,508 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:46,508 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:46,508 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:46,508 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,508 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,508 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,508 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:36:46,509 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,509 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,509 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,509 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,509 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:36:46,509 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61 securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083646Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:36:46,509 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083646Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | a90403f4e6819b4a82e08ba0bb732315b24cada5436b786b091aa32f0bc7d155 securityworker stdout | 2025-09-26 08:36:46,509 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | 06bd876209a017677fb9eb1cf73cfa32e12190640513fd8ef026017595d00e11 securityworker stdout | 2025-09-26 08:36:46,509 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,509 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:36:46,509 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:36:46,524 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61 HTTP/1.1" 200 581 securityworker stdout | 2025-09-26 08:36:46,524 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8q3y-b7oo3y-irp', 'x-amz-id-2': 'mg0l8q3y-b7oo3y-irp', 'ETag': '"c953f11b655c667e87bf2e6d854fb992-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:34 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '581', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:46 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:36:46,524 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:36:46,525 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,525 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:36:46,525 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,525 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8q3y-b7oo3y-irp', 'HostId': 'mg0l8q3y-b7oo3y-irp', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8q3y-b7oo3y-irp', 'x-amz-id-2': 'mg0l8q3y-b7oo3y-irp', 'etag': '"c953f11b655c667e87bf2e6d854fb992-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:34 GMT', 'content-type': 'application/octet-stream', 'content-length': '581', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:36:46 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 34, tzinfo=tzutc()), 'ContentLength': 581, 'ETag': '"c953f11b655c667e87bf2e6d854fb992-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } securityworker stdout | 2025-09-26 08:36:46,527 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4', 1, 0]) securityworker stdout | 2025-09-26 08:36:46,529 [86] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL (SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1")', [2, 'sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 1, 2, 'sha256:fe07684b16b82247c3539ed86a65ff37a76138ec25d380bd80c869a1a4c73236', 1]) securityworker stdout | 2025-09-26 08:36:46,530 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['402d10f8-4d79-4a8f-94a8-cc0763840db4']) securityworker stdout | 2025-09-26 08:36:46,531 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:46,532 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s)', [2]) securityworker stdout | 2025-09-26 08:36:46,533 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) securityworker stdout | 2025-09-26 08:36:46,534 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:36:46,535 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Indexing manifest [2] 3/alpine@sha256:08001109a7d679fe33b04fa51d681bd40b975d8f5cea8c3ef6c0eccb6a7338ce securityworker stdout | 2025-09-26 08:36:46,535 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,535 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,535 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,535 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,535 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,535 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:46,535 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:46,535 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:46,535 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:46,535 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:46,535 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:46,535 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,535 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,535 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:46,535 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:46,536 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876406 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fe/fe07684b16b82247c3539ed86a65ff37a76138ec25d380bd80c869a1a4c73236 securityworker stdout | 2025-09-26 08:36:46,541 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQTJMQ0pwWVhRaU9qRTNOVGc0TnpVNE1EWXNJbVY0Y0NJNk1UYzFPRGczTmpRd05pd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5bVpTOW1aVEEzTmpnMFlqRTJZamd5TWpRM1l6TTFNemxsWkRnMllUWTFabVl6TjJFM05qRXpPR1ZqTWpWa016Z3dZbVE0TUdNNE5qbGhNV0UwWXpjek1qTTJQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFMYTJsemMzTkthVEZpZDJKVGVWRXdRVlUzTlZaSWIxaDRlVEFsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRBMklpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuY2V3S3B1VmJwWHV4MUp3N2ZzQ3FhWnY3YVlGVl9DVG02S3F4RGdreWgwcTc1SWJGeUM1X2dsSktiMEtrZGozVno5TmwtdTBMbW95OXFLa1NXWUhQY0RIUFU5eE14SktXenRQejN3ckZxVlYwOW9LSVQ1X0lXcHpVWktkclYwcUpaSTNLSjZOODFUWXFQYXd3WjEwRVBYaW1QNTd6Ri1BZ3RJSG9fV20zQ05nbTZpV0FQSnpmYkJwcmRLQ0JxbFBNUWxHVGVUZy1CNXRLb2dXdHZvUVBvT3hQS1dWYlQxTkxuQmZta2dlLXVLekdGMFpRS1NscmVmSi1LakQ1aHl6dGJ1dm1KTVM4OEd6N3FISDFvZ1FOcllvTUY1cG05Vng1R0RXci1aRGRNV1hVRGdieGtMOWEwRFRYcWxCTWtFaHRRRFMxamlHcko4SXdibVZFV0lnM1ln/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fe/fe07684b16b82247c3539ed86a65ff37a76138ec25d380bd80c869a1a4c73236?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=KkisssJi1bwbSyQ0AU75VHoXxy0%3D&Expires=1758876406 securityworker stdout | 2025-09-26 08:36:46,541 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,542 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,542 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,542 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,542 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,542 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:46,542 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:46,542 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:46,542 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:46,542 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:46,542 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:46,542 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,542 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,542 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:46,542 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:46,542 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876406 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fe/fe07684b16b82247c3539ed86a65ff37a76138ec25d380bd80c869a1a4c73236 securityworker stdout | 2025-09-26 08:36:46,548 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQTJMQ0pwWVhRaU9qRTNOVGc0TnpVNE1EWXNJbVY0Y0NJNk1UYzFPRGczTmpRd05pd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5bVpTOW1aVEEzTmpnMFlqRTJZamd5TWpRM1l6TTFNemxsWkRnMllUWTFabVl6TjJFM05qRXpPR1ZqTWpWa016Z3dZbVE0TUdNNE5qbGhNV0UwWXpjek1qTTJQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFMYTJsemMzTkthVEZpZDJKVGVWRXdRVlUzTlZaSWIxaDRlVEFsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRBMklpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuY2V3S3B1VmJwWHV4MUp3N2ZzQ3FhWnY3YVlGVl9DVG02S3F4RGdreWgwcTc1SWJGeUM1X2dsSktiMEtrZGozVno5TmwtdTBMbW95OXFLa1NXWUhQY0RIUFU5eE14SktXenRQejN3ckZxVlYwOW9LSVQ1X0lXcHpVWktkclYwcUpaSTNLSjZOODFUWXFQYXd3WjEwRVBYaW1QNTd6Ri1BZ3RJSG9fV20zQ05nbTZpV0FQSnpmYkJwcmRLQ0JxbFBNUWxHVGVUZy1CNXRLb2dXdHZvUVBvT3hQS1dWYlQxTkxuQmZta2dlLXVLekdGMFpRS1NscmVmSi1LakQ1aHl6dGJ1dm1KTVM4OEd6N3FISDFvZ1FOcllvTUY1cG05Vng1R0RXci1aRGRNV1hVRGdieGtMOWEwRFRYcWxCTWtFaHRRRFMxamlHcko4SXdibVZFV0lnM1ln/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fe/fe07684b16b82247c3539ed86a65ff37a76138ec25d380bd80c869a1a4c73236?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=KkisssJi1bwbSyQ0AU75VHoXxy0%3D&Expires=1758876406 securityworker stdout | 2025-09-26 08:36:46,548 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,548 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,548 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,548 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,548 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,548 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:46,548 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:46,548 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:46,548 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:46,548 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:46,548 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:46,548 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,548 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,548 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:46,548 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:46,548 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876406 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:46,554 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQTJMQ0pwWVhRaU9qRTNOVGc0TnpVNE1EWXNJbVY0Y0NJNk1UYzFPRGczTmpRd05pd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFOWmtaeE4wbEhVMjlJZUVRd01URkJRM3AzYkdoUWMyVkpWbk1sTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRBMklpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRXdMNlpyYTdoeGsxUDdOOS0zSVZZM1kyOFFaWmNlY1ZrSnJ2cThlUUJyV29KV05yRF93T1NKeW1BZXQzanFXWEV1RW1HaVpBZjdKRl85dmdFRnU0YmUzdmw1dW1FVFBIZG5KMFVWSnktVG95QUNFUFhyQVVvWDhBLXFISEE4VWVSeUtCNVZ2ZXBtdElQRTd0SXoxNno5Y2JIaXpTRFZ5YUZvRlB0X1A4V2lKS0hXTjJ6QVZpa3hHeHFZU1ItTkNJcmdwNmFNZFFjN21aMTl2NUdCRWZ4NjJJd2djUWpDbmtBN1FPMTBDZ1hlQ0NmQW1XZDRwSm5ZNjR4Z05hVFNDMHdUSm5PMkNCaUJLYkZXTTJNak9JOU5CMEhEMFNVWVRRVUQ3MXJuMGF4Y256bEZyWDdOODZzWmgxTU1oMXNPU3RRNkxyV0RLeE5QblphQXhTSG84dW9R/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=MfFq7IGSoHxD011ACzwlhPseIVs%3D&Expires=1758876406 securityworker stdout | 2025-09-26 08:36:46,554 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,554 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,554 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,554 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,554 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,554 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:46,554 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:46,554 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:46,554 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:46,554 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:46,554 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:46,555 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:46,555 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:46,555 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:46,555 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:46,555 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876406 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:46,560 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQTJMQ0pwWVhRaU9qRTNOVGc0TnpVNE1EWXNJbVY0Y0NJNk1UYzFPRGczTmpRd05pd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFOWmtaeE4wbEhVMjlJZUVRd01URkJRM3AzYkdoUWMyVkpWbk1sTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRBMklpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRXdMNlpyYTdoeGsxUDdOOS0zSVZZM1kyOFFaWmNlY1ZrSnJ2cThlUUJyV29KV05yRF93T1NKeW1BZXQzanFXWEV1RW1HaVpBZjdKRl85dmdFRnU0YmUzdmw1dW1FVFBIZG5KMFVWSnktVG95QUNFUFhyQVVvWDhBLXFISEE4VWVSeUtCNVZ2ZXBtdElQRTd0SXoxNno5Y2JIaXpTRFZ5YUZvRlB0X1A4V2lKS0hXTjJ6QVZpa3hHeHFZU1ItTkNJcmdwNmFNZFFjN21aMTl2NUdCRWZ4NjJJd2djUWpDbmtBN1FPMTBDZ1hlQ0NmQW1XZDRwSm5ZNjR4Z05hVFNDMHdUSm5PMkNCaUJLYkZXTTJNak9JOU5CMEhEMFNVWVRRVUQ3MXJuMGF4Y256bEZyWDdOODZzWmgxTU1oMXNPU3RRNkxyV0RLeE5QblphQXhTSG84dW9R/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=MfFq7IGSoHxD011ACzwlhPseIVs%3D&Expires=1758876406 securityworker stdout | 2025-09-26 08:36:46,560 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:36:46,560 [86] [DEBUG] [util.secscan.v4.api] POSTing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_report gunicorn-registry stdout | 2025-09-26 08:36:46,609 [251] [DEBUG] [app] Starting request: urn:request:04395d42-0071-45f3-afc3-bb1407b59e1f (/v2/testorg/alpine/blobs/sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:46,609 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:46,609 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:46,609 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:46,610 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:46,610 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:46,610 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:46,610 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:46,610 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:46,611 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,613 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,614 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:46,614 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7_2 gunicorn-registry stdout | 2025-09-26 08:36:46,614 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:46,615 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,616 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,617 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,618 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,619 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,620 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7_2: None gunicorn-registry stdout | 2025-09-26 08:36:46,620 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7_2: None gunicorn-registry stdout | 2025-09-26 08:36:46,620 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:46,621 [251] [DEBUG] [app] Ending request: urn:request:04395d42-0071-45f3-afc3-bb1407b59e1f (/v2/testorg/alpine/blobs/sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:04395d42-0071-45f3-afc3-bb1407b59e1f', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 'path': '/v2/testorg/alpine/blobs/sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:46,621 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:46,621 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:46,621 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:46 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:46 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.013 1714 0.013) gunicorn-registry stdout | 2025-09-26 08:36:46,739 [251] [DEBUG] [app] Starting request: urn:request:34aa0864-3ea4-4b72-9408-f8d81f19ef24 (/v2/testorg/alpine/blobs/uploads/151ce5ed-eb40-4645-a8ce-57a6a9e5e094) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:46,739 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '151ce5ed-eb40-4645-a8ce-57a6a9e5e094', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:46,740 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:46,740 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:46,740 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:46,740 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:46,741 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:46,741 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:46,741 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:46,741 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,743 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,744 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,745 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,745 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,746 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,747 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,748 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:46,749 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['151ce5ed-eb40-4645-a8ce-57a6a9e5e094', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:46,750 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:46,750 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:46,750 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:46,751 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:46,751 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:46,751 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,751 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,751 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,751 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,751 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:46,751 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,751 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,751 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:46,751 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:46,751 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:46,751 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:46,752 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:46,752 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,752 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,752 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,752 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:46,752 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:46,752 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:46,752 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,752 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,753 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:46,753 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083646Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:46,753 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083646Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 1d769c4dfece68ec919504498b4dfc804e5bf472347cf759e8672d91a693ffd0 gunicorn-registry stdout | 2025-09-26 08:36:46,753 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 6f265a8bd423e6fcfaebd9729f7531689bb2328583ac6c3c8d8086ffa52c8208 gunicorn-registry stdout | 2025-09-26 08:36:46,753 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,753 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:46,753 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:46,779 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:46,779 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8qaz-fe56e0-3tr', 'x-amz-id-2': 'mg0l8qaz-fe56e0-3tr', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:46 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:46,779 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e68d6509ed73ec60008f933c3' gunicorn-registry stdout | 2025-09-26 08:36:46,780 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:46,780 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:46,780 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:46,780 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8qaz-fe56e0-3tr', 'HostId': 'mg0l8qaz-fe56e0-3tr', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8qaz-fe56e0-3tr', 'x-amz-id-2': 'mg0l8qaz-fe56e0-3tr', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:46 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e', 'UploadId': '68d6509ed73ec60008f933c3'} gunicorn-registry stdout | 2025-09-26 08:36:46,780 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:47,059 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:36:47,059 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:36:47,060 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e', 'UploadId': '68d6509ed73ec60008f933c3', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1ba12f010>, 'ContentLength': 4135941} gunicorn-registry stdout | 2025-09-26 08:36:47,060 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,060 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,060 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,060 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,060 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,060 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,060 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,060 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,060 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:47,060 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:47,060 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:47,060 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:47,060 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,068 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,068 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:36:47,068 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,068 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,068 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e', 'query_string': {'uploadId': '68d6509ed73ec60008f933c3', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '4135941', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'X/bPBd0MqAw40lsXJHdtQw==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1ba12f010>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e?uploadId=68d6509ed73ec60008f933c3&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e', 'UploadId': '68d6509ed73ec60008f933c3', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1ba12f010>, 'ContentLength': 4135941}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:47,069 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,069 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,069 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,069 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,069 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:47,069 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e gunicorn-registry stdout | partNumber=1&uploadId=68d6509ed73ec60008f933c3 gunicorn-registry stdout | content-length:4135941 gunicorn-registry stdout | content-md5:X/bPBd0MqAw40lsXJHdtQw== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083647Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:47,069 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083647Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 59e97366c87a8cb99e8aab836007853bae51c0bb663f70cac3ff830e6bae0a2c gunicorn-registry stdout | 2025-09-26 08:36:47,069 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 50c6d4af36663fd0026e99d4f75b82d30d38f7896d408feb0841c8634cd99e67 gunicorn-registry stdout | 2025-09-26 08:36:47,069 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,069 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:47,069 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:47,070 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:47,072 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:36:47,251 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e?uploadId=68d6509ed73ec60008f933c3&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:47,252 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8qjj-3ya3d4-zi0', 'x-amz-id-2': 'mg0l8qjj-3ya3d4-zi0', 'ETag': '"5ff6cf05dd0ca80c38d25b1724776d43"', 'Date': 'Fri, 26 Sep 2025 08:36:47 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:36:47,252 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:47,252 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,252 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:47,252 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,252 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8qjj-3ya3d4-zi0', 'HostId': 'mg0l8qjj-3ya3d4-zi0', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8qjj-3ya3d4-zi0', 'x-amz-id-2': 'mg0l8qjj-3ya3d4-zi0', 'etag': '"5ff6cf05dd0ca80c38d25b1724776d43"', 'date': 'Fri, 26 Sep 2025 08:36:47 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"5ff6cf05dd0ca80c38d25b1724776d43"'} gunicorn-registry stdout | 2025-09-26 08:36:47,253 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e', 'UploadId': '68d6509ed73ec60008f933c3', 'MultipartUpload': {'Parts': [{'ETag': '"5ff6cf05dd0ca80c38d25b1724776d43"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:36:47,253 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,253 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,253 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,253 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,253 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,253 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,253 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,253 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:47,253 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:47,253 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:47,253 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:47,254 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,254 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,254 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,254 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e', 'query_string': {'uploadId': '68d6509ed73ec60008f933c3'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"5ff6cf05dd0ca80c38d25b1724776d43"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e?uploadId=68d6509ed73ec60008f933c3', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e', 'UploadId': '68d6509ed73ec60008f933c3', 'MultipartUpload': {'Parts': [{'ETag': '"5ff6cf05dd0ca80c38d25b1724776d43"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:47,254 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,254 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,254 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,254 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,254 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:47,254 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e gunicorn-registry stdout | uploadId=68d6509ed73ec60008f933c3 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:ccb14a13b2385d2f37b8d33297daabc9f852b596c7d3f353097516161c0446e2 gunicorn-registry stdout | x-amz-date:20250926T083647Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | ccb14a13b2385d2f37b8d33297daabc9f852b596c7d3f353097516161c0446e2 gunicorn-registry stdout | 2025-09-26 08:36:47,254 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083647Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 04c4686b4eb8cf5c0ec0eff800e18f6601fe467d50f8e6e4cd3401904dfaf30e gunicorn-registry stdout | 2025-09-26 08:36:47,254 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | a8794b46d833dbe2b7992a03292e72c4a2e07074ac9bff77ae06fbd9dffdbc84 gunicorn-registry stdout | 2025-09-26 08:36:47,254 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,254 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:47,255 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:47,270 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e?uploadId=68d6509ed73ec60008f933c3 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:36:47,271 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8qoo-6zzhus-jn0', 'x-amz-id-2': 'mg0l8qoo-6zzhus-jn0', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:36:47 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:47,271 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e"5fd400f45e4dfcda15ec19cba6d9434d-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e?uploadId=68d6509ed73ec60008f933c3' gunicorn-registry stdout | 2025-09-26 08:36:47,271 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,271 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,272 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:47,272 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,272 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8qoo-6zzhus-jn0', 'HostId': 'mg0l8qoo-6zzhus-jn0', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8qoo-6zzhus-jn0', 'x-amz-id-2': 'mg0l8qoo-6zzhus-jn0', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:36:47 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e?uploadId=68d6509ed73ec60008f933c3', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e', 'ETag': '"5fd400f45e4dfcda15ec19cba6d9434d-1"'} gunicorn-registry stdout | 2025-09-26 08:36:47,272 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:47,272 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:47,273 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 4135941 bytes to blob 151ce5ed-eb40-4645-a8ce-57a6a9e5e094 took 0.5229148864746094 seconds gunicorn-registry stdout | 2025-09-26 08:36:47,273 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['151ce5ed-eb40-4645-a8ce-57a6a9e5e094', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,275 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, '151ce5ed-eb40-4645-a8ce-57a6a9e5e094', 4135941, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwNwBGhgA07Yb/A/6XWcD3qePp+KPX778u+H+/Vt3LDX+wzavvPf6Hn4Y/RNzOf7rJTW5yk+8r/18AAAD//1OQwAUAAAAAAAAAAOD4AQAAAAAgq0Dea/HvZqFt6wRzhjH+lE2UjMoQyw5hnzONKkP7x5RiLg==', 9, '{"chunks": [["uploads/3a846a00-d906-48a3-8291-ca07131e193e", 0, 4135941]]}', 1, 8799744, datetime.datetime(2025, 9, 26, 8, 36, 46, 693741), None, None, 22]) gunicorn-registry stdout | 2025-09-26 08:36:47,277 [251] [DEBUG] [app] Ending request: urn:request:34aa0864-3ea4-4b72-9408-f8d81f19ef24 (/v2/testorg/alpine/blobs/uploads/151ce5ed-eb40-4645-a8ce-57a6a9e5e094) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:34aa0864-3ea4-4b72-9408-f8d81f19ef24', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/151ce5ed-eb40-4645-a8ce-57a6a9e5e094', 'path': '/v2/testorg/alpine/blobs/uploads/151ce5ed-eb40-4645-a8ce-57a6a9e5e094', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:47,277 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:47,277 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:47,277 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:47 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/151ce5ed-eb40-4645-a8ce-57a6a9e5e094 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:47 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/151ce5ed-eb40-4645-a8ce-57a6a9e5e094 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.539 4137717 0.538) gunicorn-registry stdout | 2025-09-26 08:36:47,318 [251] [DEBUG] [app] Starting request: urn:request:0798e215-0f44-4cf3-ae9f-ff850d23a633 (/v2/testorg/alpine/blobs/uploads/151ce5ed-eb40-4645-a8ce-57a6a9e5e094) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:47,318 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '151ce5ed-eb40-4645-a8ce-57a6a9e5e094', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:47,319 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:47,319 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:47,319 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:47,320 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:47,320 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:47,320 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:47,320 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:47,320 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,322 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,322 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,323 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,324 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,325 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,326 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,328 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:47,329 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['151ce5ed-eb40-4645-a8ce-57a6a9e5e094', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,330 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:47,330 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:47,330 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:47,331 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:47,331 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/396d8de5-795b-4b3e-851d-dbe8a4a32e6d', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:47,332 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,332 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,332 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,332 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,332 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,332 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,332 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,332 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,332 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:47,332 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:47,332 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:47,332 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:47,332 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,333 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,333 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,333 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/396d8de5-795b-4b3e-851d-dbe8a4a32e6d?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/396d8de5-795b-4b3e-851d-dbe8a4a32e6d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/396d8de5-795b-4b3e-851d-dbe8a4a32e6d?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/396d8de5-795b-4b3e-851d-dbe8a4a32e6d', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:47,333 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,333 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,333 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,333 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,334 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:47,334 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/396d8de5-795b-4b3e-851d-dbe8a4a32e6d gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083647Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:47,334 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083647Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 9f3879883d0d688a9d3aa547b6512556dd9660266a267e9eac97e42fa57c3f88 gunicorn-registry stdout | 2025-09-26 08:36:47,334 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 7b800a5567501680e0825f2d05cd157e872c24e2a84b84b7484c1874e41b3373 gunicorn-registry stdout | 2025-09-26 08:36:47,334 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,334 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:47,334 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:47,342 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/396d8de5-795b-4b3e-851d-dbe8a4a32e6d?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:47,342 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8qqx-8c61qf-vuf', 'x-amz-id-2': 'mg0l8qqx-8c61qf-vuf', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:47 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:47,342 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/396d8de5-795b-4b3e-851d-dbe8a4a32e6d68d6509fd73ec60008f933cd' gunicorn-registry stdout | 2025-09-26 08:36:47,342 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,342 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:47,342 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,342 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8qqx-8c61qf-vuf', 'HostId': 'mg0l8qqx-8c61qf-vuf', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8qqx-8c61qf-vuf', 'x-amz-id-2': 'mg0l8qqx-8c61qf-vuf', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:47 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/396d8de5-795b-4b3e-851d-dbe8a4a32e6d', 'UploadId': '68d6509fd73ec60008f933cd'} gunicorn-registry stdout | 2025-09-26 08:36:47,342 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:47,343 [251] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/396d8de5-795b-4b3e-851d-dbe8a4a32e6d', 'UploadId': '68d6509fd73ec60008f933cd'} gunicorn-registry stdout | 2025-09-26 08:36:47,344 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,344 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,344 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,344 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,344 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,344 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,344 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:47,344 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:47,344 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:47,344 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:47,344 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,344 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,345 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,345 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/396d8de5-795b-4b3e-851d-dbe8a4a32e6d', 'query_string': {'uploadId': '68d6509fd73ec60008f933cd'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/396d8de5-795b-4b3e-851d-dbe8a4a32e6d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/396d8de5-795b-4b3e-851d-dbe8a4a32e6d?uploadId=68d6509fd73ec60008f933cd', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/396d8de5-795b-4b3e-851d-dbe8a4a32e6d', 'UploadId': '68d6509fd73ec60008f933cd'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:47,345 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,345 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,345 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,345 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,345 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:47,345 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/396d8de5-795b-4b3e-851d-dbe8a4a32e6d gunicorn-registry stdout | uploadId=68d6509fd73ec60008f933cd gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083647Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:47,345 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083647Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | edf2ff0d449e904dceedba14cdd42b63063ab805f7df6a8ba1eb6eda9bfe10c7 gunicorn-registry stdout | 2025-09-26 08:36:47,345 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 1537fda16eae8399e8200145b061d3235747e7acc00aeded7e4dece842d94397 gunicorn-registry stdout | 2025-09-26 08:36:47,346 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,346 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:47,346 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:47,353 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/396d8de5-795b-4b3e-851d-dbe8a4a32e6d?uploadId=68d6509fd73ec60008f933cd HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:36:47,353 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8qr7-8ifwt6-100p', 'x-amz-id-2': 'mg0l8qr7-8ifwt6-100p', 'Date': 'Fri, 26 Sep 2025 08:36:47 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:47,353 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:47,353 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,353 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:47,353 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,353 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8qr7-8ifwt6-100p', 'HostId': 'mg0l8qr7-8ifwt6-100p', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8qr7-8ifwt6-100p', 'x-amz-id-2': 'mg0l8qr7-8ifwt6-100p', 'date': 'Fri, 26 Sep 2025 08:36:47 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:36:47,353 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 151ce5ed-eb40-4645-a8ce-57a6a9e5e094 took 0.023018598556518555 seconds gunicorn-registry stdout | 2025-09-26 08:36:47,354 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['151ce5ed-eb40-4645-a8ce-57a6a9e5e094', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,355 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, '151ce5ed-eb40-4645-a8ce-57a6a9e5e094', 4135941, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwNwBGhgA07Yb/A/6XWcD3qePp+KPX778u+H+/Vt3LDX+wzavvPf6Hn4Y/RNzOf7rJTW5yk+8r/18AAAD//1OQwAUAAAAAAAAAAOD4AQAAAAAgq0Dea/HvZqFt6wRzhjH+lE2UjMoQyw5hnzONKkP7x5RiLg==', 9, '{"chunks": [["uploads/3a846a00-d906-48a3-8291-ca07131e193e", 0, 4135941]]}', 2, 8799744, datetime.datetime(2025, 9, 26, 8, 36, 46, 693741), None, None, 22]) gunicorn-registry stdout | 2025-09-26 08:36:47,357 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:47,357 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:47,357 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:47,358 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:47,359 [251] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7'} gunicorn-registry stdout | 2025-09-26 08:36:47,359 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,359 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,359 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,359 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,359 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,359 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,359 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,359 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:47,359 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:47,359 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:47,359 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:47,360 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,360 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,360 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,360 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:47,360 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,360 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,360 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,360 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,360 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:47,360 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083647Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:47,360 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083647Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 669abe75714f9005f139fa1bf82ecf459b32838560350dd63f93cd99d22a7f18 gunicorn-registry stdout | 2025-09-26 08:36:47,361 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | b490cba24d0e68a56459cce182275eaf5d9217a0a18f57d2115b1d4adad7562c gunicorn-registry stdout | 2025-09-26 08:36:47,361 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,361 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:47,361 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:47,367 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:36:47,367 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8qrm-8rmsi1-mmi', 'x-amz-id-2': 'mg0l8qrm-8rmsi1-mmi', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:47 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:47,367 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:47,367 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,367 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:47,367 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,367 [251] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:36:47,368 [251] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:36:47,368 [251] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7 gunicorn-registry stdout | 2025-09-26 08:36:47,368 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:47,368 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:47,368 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:47,369 [251] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:36:47,369 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,369 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,369 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,369 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,369 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,369 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,369 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,369 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:47,369 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:47,369 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:47,369 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:47,370 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,370 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,370 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,370 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:47,370 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,370 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,370 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,370 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,370 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,370 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:47,370 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083647Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:47,370 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083647Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | b4faf0f59220402a59c3b03bb77f15c51c5a837222dfe61a010c35a74abbb118 gunicorn-registry stdout | 2025-09-26 08:36:47,371 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | bfaf8d4276f3b60dab46f9083df4ff328c13ddfb1b945640c75782c3efeac1d9 gunicorn-registry stdout | 2025-09-26 08:36:47,371 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,371 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,371 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:47,371 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:47,372 [251] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local buildlogsarchiver stdout | 2025-09-26 08:36:47,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:36:47,375 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:17.375102+00:00 (in 29.999553 seconds) buildlogsarchiver stdout | 2025-09-26 08:36:47,375 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:17 GMT)" (scheduled at 2025-09-26 08:36:47.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:36:47,376 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 36, 47, 375849), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:36:47,383 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:36:47,383 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:36:47,383 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:17 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:36:47,400 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:47,400 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8qsk-9br596-107p', 'x-amz-id-2': 'mg0l8qsk-9br596-107p', 'ETag': '"5fd400f45e4dfcda15ec19cba6d9434d-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:47 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '4135941', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:47 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:47,400 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:47,400 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,400 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:47,400 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,401 [251] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:36:47,401 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:47,401 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:47,401 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 'extra_args': {}, 'callbacks': [], 'size': 4135941} gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,402 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,403 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:47,403 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/3a846a00-d906-48a3-8291-ca07131e193e gunicorn-registry stdout | x-amz-date:20250926T083647Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:47,403 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083647Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 8829326ee46ede8efce4332e663204c64db05140e662defecea036bbf6d2f01f gunicorn-registry stdout | 2025-09-26 08:36:47,403 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | a920c8aebc2aae277e3f75cd1de141a0f5938e831d1b9a3535c7d96bc987fbec gunicorn-registry stdout | 2025-09-26 08:36:47,403 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,403 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,403 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:47,403 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:47,403 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:47,428 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:36:47,428 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8qss-9gmt9y-ccl', 'x-amz-id-2': 'mg0l8qss-9gmt9y-ccl', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:36:47 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:47,428 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:36:47.000Z"5fd400f45e4dfcda15ec19cba6d9434d-1"' gunicorn-registry stdout | 2025-09-26 08:36:47,428 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,428 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,428 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:47,429 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,429 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:47,429 [251] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 151ce5ed-eb40-4645-a8ce-57a6a9e5e094 with digest sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7 took 0.0619199275970459 seconds gunicorn-registry stdout | 2025-09-26 08:36:47,430 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['151ce5ed-eb40-4645-a8ce-57a6a9e5e094', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,431 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,432 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['8034dd97-6471-49e4-86c8-55e833988160', 4135941, 8799744, True, True, 'sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7']) gunicorn-registry stdout | 2025-09-26 08:36:47,433 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [23, 9]) gunicorn-registry stdout | 2025-09-26 08:36:47,433 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,434 [251] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [2, 23, datetime.datetime(2025, 9, 26, 8, 36, 47, 434351), datetime.datetime(2025, 9, 26, 9, 36, 47, 434336)]) gunicorn-registry stdout | 2025-09-26 08:36:47,435 [251] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [22]) gunicorn-registry stdout | 2025-09-26 08:36:47,437 [251] [DEBUG] [app] Ending request: urn:request:0798e215-0f44-4cf3-ae9f-ff850d23a633 (/v2/testorg/alpine/blobs/uploads/151ce5ed-eb40-4645-a8ce-57a6a9e5e094) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:0798e215-0f44-4cf3-ae9f-ff850d23a633', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/151ce5ed-eb40-4645-a8ce-57a6a9e5e094?digest=sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7', 'path': '/v2/testorg/alpine/blobs/uploads/151ce5ed-eb40-4645-a8ce-57a6a9e5e094', 'parameters': {'digest': 'sha256:d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:47,437 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:47,437 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:47,437 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:47 +0000] "PUT /v2/testorg/alpine/blobs/uploads/151ce5ed-eb40-4645-a8ce-57a6a9e5e094?digest=sha256%3Ad69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:47 +0000] "PUT /v2/testorg/alpine/blobs/uploads/151ce5ed-eb40-4645-a8ce-57a6a9e5e094?digest=sha256%3Ad69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.120 1849 0.120) securityworker stdout | 2025-09-26 08:36:47,473 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "POST /indexer/api/v1/index_report HTTP/1.1" 201 None securityworker stdout | 2025-09-26 08:36:47,477 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) securityworker stdout | 2025-09-26 08:36:47,479 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) securityworker stdout | 2025-09-26 08:36:47,480 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:36:47,480 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/matcher/api/v1/vulnerability_report/sha256:08001109a7d679fe33b04fa51d681bd40b975d8f5cea8c3ef6c0eccb6a7338ce securityworker stdout | 2025-09-26 08:36:47,593 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /matcher/api/v1/vulnerability_report/sha256:08001109a7d679fe33b04fa51d681bd40b975d8f5cea8c3ef6c0eccb6a7338ce HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:36:47,596 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Attempting to create notifications for manifest #2 securityworker stdout | 2025-09-26 08:36:47,596 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE ("manifestsecuritystatus"."manifest_id" = %s)', [2]) securityworker stdout | 2025-09-26 08:36:47,597 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [2, 2, 2, '""', datetime.datetime(2025, 9, 26, 8, 36, 47, 597545), '37b46b4a70b6f1a19d5e4e18d21f57ff', 4, '{}']) securityworker stdout | 2025-09-26 08:36:47,599 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:36:47,601 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36', 1, 0]) securityworker stdout | 2025-09-26 08:36:47,602 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['35f63725-d817-4fe9-a541-a45a4218f4a4']) securityworker stdout | 2025-09-26 08:36:47,603 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:36:47,603 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:36:47,604 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36'} securityworker stdout | 2025-09-26 08:36:47,604 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:47,604 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:47,604 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:47,604 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:47,604 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:47,604 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:47,604 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:47,604 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:47,604 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:47,604 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:47,604 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:47,604 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:47,604 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:47,604 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:47,604 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:36:47,604 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:47,604 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:47,604 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:47,604 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:47,605 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:36:47,605 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36 securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083647Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:36:47,605 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083647Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | 13d4b35f1c076bad19559c0b84726326e39e6401e0b26311c9d66613c3e3af88 securityworker stdout | 2025-09-26 08:36:47,605 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | db94d4612df83ce3758dc56c678a20533c2a442bc6d5f88a89e3fb4cf17c8b66 securityworker stdout | 2025-09-26 08:36:47,605 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:47,605 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:36:47,605 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:36:47,621 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36 HTTP/1.1" 200 241 securityworker stdout | 2025-09-26 08:36:47,621 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8qye-cso63o-h4l', 'x-amz-id-2': 'mg0l8qye-cso63o-h4l', 'ETag': '"c170324d07169ded9b90cce181613f90-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:36 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:47 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:36:47,621 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:36:47,622 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:47,622 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:36:47,622 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:47,622 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8qye-cso63o-h4l', 'HostId': 'mg0l8qye-cso63o-h4l', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8qye-cso63o-h4l', 'x-amz-id-2': 'mg0l8qye-cso63o-h4l', 'etag': '"c170324d07169ded9b90cce181613f90-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:36 GMT', 'content-type': 'application/octet-stream', 'content-length': '241', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:36:47 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 36, tzinfo=tzutc()), 'ContentLength': 241, 'ETag': '"c170324d07169ded9b90cce181613f90-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } securityworker stdout | 2025-09-26 08:36:47,625 [86] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL ((SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1") UNION ALL (SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "manifestblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q2"))', [2, 'sha256:0775bf52e81a3cf747ce4b00c80d91adc63a6a121d89b946e8b5a0c9ba509944', 1, 2, 'sha256:7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36', 1, 2, 'sha256:5ff8d76a871d143e3d5bf83dd9a47bdd130b4f9c66d34531b064f0395b77ea6a', 1]) securityworker stdout | 2025-09-26 08:36:47,626 [86] [ERROR] [data.registry_model.registry_oci_model] Could not list manifest layers `3` securityworker stdout | Traceback (most recent call last): securityworker stdout | File "/quay-registry/data/registry_model/registry_oci_model.py", line 666, in list_manifest_layers securityworker stdout | layers = self._list_manifest_layers( securityworker stdout | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ securityworker stdout | File "/quay-registry/data/registry_model/registry_oci_model.py", line 1263, in _list_manifest_layers securityworker stdout | for layer in layers: securityworker stdout | ^^^^^^ securityworker stdout | File "/quay-registry/image/oci/manifest.py", line 308, in get_layers securityworker stdout | command=image_layer.history.command, securityworker stdout | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ securityworker stdout | AttributeError: 'NoneType' object has no attribute 'command' securityworker stdout | 2025-09-26 08:36:47,628 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) securityworker stdout | 2025-09-26 08:36:47,629 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:36:47,630 [86] [WARNING] [data.secscan_model.secscan_v4_model] Cannot index 3/alpine@sha256:bd4199eb785a74df05d995ccf017888413746b5566e0b401b93a173859f0827f due to manifest being invalid (manifest has no layers) securityworker stdout | 2025-09-26 08:36:47,630 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE (("manifestsecuritystatus"."manifest_id" = %s) AND ("manifestsecuritystatus"."repository_id" = %s))', [3, 2]) securityworker stdout | 2025-09-26 08:36:47,630 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [3, 2, -2, '{}', datetime.datetime(2025, 9, 26, 8, 36, 47, 630545), 'none', 4, '{}']) securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Marking id range as completed: 1-4 by worker securityworker stdout | 2025-09-26 08:36:47,632 [86] [DEBUG] [util.migrate.allocator] Marking id range as completed: 1-4 by worker securityworker stdout | 2025-09-26 08:36:47,632 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-4 securityworker stdout | 2025-09-26 08:36:47,632 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:36:47,632 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 4 securityworker stdout | 2025-09-26 08:36:47,632 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:36:47,632 [86] [DEBUG] [util.migrate.allocator] Total range: 4-1 securityworker stdout | 2025-09-26 08:36:47,632 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:36:47,632 [86] [DEBUG] [util.migrate.allocator] Total range: 1-4 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-4 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 4 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Total range: 4-1 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Total range: 1-4 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:36:47,632 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:36:47,632 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-4 securityworker stdout | 2025-09-26 08:36:47,632 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-4 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:36:47,633 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 31, 37, 690638), 1, 4]) securityworker stdout | 2025-09-26 08:36:47,633 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-4 by worker securityworker stdout | 2025-09-26 08:36:47,634 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-4 securityworker stdout | 2025-09-26 08:36:47,634 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:36:47,634 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 4 securityworker stdout | 2025-09-26 08:36:47,634 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:36:47,634 [86] [DEBUG] [util.migrate.allocator] Total range: 4-1 securityworker stdout | 2025-09-26 08:36:47,634 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:36:47,634 [86] [DEBUG] [util.migrate.allocator] Total range: 1-4 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-4 by worker securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-4 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 4 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Total range: 4-1 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Total range: 1-4 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:36:47,634 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:36:47,634 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-4 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-4 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:36:47,634 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:36:47,635 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 31, 37, 690638), 1, 4]) securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-4 by worker securityworker stdout | 2025-09-26 08:36:47,636 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-4 by worker securityworker stdout | 2025-09-26 08:36:47,636 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-4 securityworker stdout | 2025-09-26 08:36:47,636 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:36:47,636 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 4 securityworker stdout | 2025-09-26 08:36:47,636 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:36:47,636 [86] [DEBUG] [util.migrate.allocator] Total range: 4-1 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-4 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 4 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] Total range: 4-1 securityworker stderr | 2025-09-26 08:36:47 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:36:47,636 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:36:47,637 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:36:47,637 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:07 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:36:47,746 [251] [DEBUG] [app] Starting request: urn:request:cd1c9be3-e3c1-4a00-b14c-949989c8a5db (/v2/testorg/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:47,746 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:47,746 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:47,746 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:47,747 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:47,747 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:47,747 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:47,747 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:47,747 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:47,748 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,749 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,750 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,751 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,752 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,753 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,754 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:47,755 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,756 [251] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [2, 'e883a005-5c78-41c8-ab03-3447083d3f42', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 36, 47, 755931)]) gunicorn-registry stdout | 2025-09-26 08:36:47,758 [251] [DEBUG] [app] Ending request: urn:request:cd1c9be3-e3c1-4a00-b14c-949989c8a5db (/v2/testorg/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:cd1c9be3-e3c1-4a00-b14c-949989c8a5db', 'remote_addr': '10.131.2.20', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/', 'path': '/v2/testorg/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:47,758 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:47,758 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:47 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.013 1693 0.013) gunicorn-registry stdout | 2025-09-26 08:36:47,758 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:47 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" gunicorn-registry stdout | 2025-09-26 08:36:47,799 [258] [DEBUG] [app] Starting request: urn:request:0cb60c1a-c863-4459-8acd-39e4474bc24d (/v2/testorg/alpine/blobs/uploads/e883a005-5c78-41c8-ab03-3447083d3f42) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:47,799 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'e883a005-5c78-41c8-ab03-3447083d3f42', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:47,799 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:47,799 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:47,800 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:47,800 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:47,800 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:47,800 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:47,800 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:47,801 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,802 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,803 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,804 [258] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,805 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,806 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,807 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,808 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:47,809 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['e883a005-5c78-41c8-ab03-3447083d3f42', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,810 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:47,810 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:47,810 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:47,812 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:47,812 [258] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:47,812 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,812 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,812 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,812 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,812 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,812 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,812 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,812 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,812 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:47,812 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:47,812 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:47,812 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:47,813 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,813 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,813 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,813 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:47,813 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,813 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,813 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,813 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,813 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:47,813 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083647Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:47,813 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083647Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 0ceddd01d03a20de48abc6eae26960ea1840783a7c28f66c6052bd2a098a85f2 gunicorn-registry stdout | 2025-09-26 08:36:47,813 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 3ccce7fb401152cc2588fb815e601e4a4085630214781a314c8d1f6875eaa924 gunicorn-registry stdout | 2025-09-26 08:36:47,813 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,814 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:47,814 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:47,820 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:47,820 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8r47-g9089n-ps9', 'x-amz-id-2': 'mg0l8r47-g9089n-ps9', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:47 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:47,820 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a668d6509fd73ec60008f933d1' gunicorn-registry stdout | 2025-09-26 08:36:47,820 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,820 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:47,820 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,820 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8r47-g9089n-ps9', 'HostId': 'mg0l8r47-g9089n-ps9', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8r47-g9089n-ps9', 'x-amz-id-2': 'mg0l8r47-g9089n-ps9', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:47 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6', 'UploadId': '68d6509fd73ec60008f933d1'} gunicorn-registry stdout | 2025-09-26 08:36:47,821 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:47,822 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:36:47,822 [258] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:36:47,822 [258] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6', 'UploadId': '68d6509fd73ec60008f933d1', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89a0b80>, 'ContentLength': 597} gunicorn-registry stdout | 2025-09-26 08:36:47,822 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,822 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,822 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,822 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,822 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,822 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,822 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,822 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,822 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:47,822 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:47,822 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:47,822 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:47,823 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,823 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,823 [258] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:36:47,823 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,823 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,823 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6', 'query_string': {'uploadId': '68d6509fd73ec60008f933d1', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '597', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'tkTpPSKa4BAg9vyqQAWxhw==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b89a0b80>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6?uploadId=68d6509fd73ec60008f933d1&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6', 'UploadId': '68d6509fd73ec60008f933d1', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89a0b80>, 'ContentLength': 597}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:47,823 [258] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,823 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,823 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,823 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,823 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:47,823 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6 gunicorn-registry stdout | partNumber=1&uploadId=68d6509fd73ec60008f933d1 gunicorn-registry stdout | content-length:597 gunicorn-registry stdout | content-md5:tkTpPSKa4BAg9vyqQAWxhw== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083647Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:47,823 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083647Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 6fd61fc52a85baf965f74fc6b3bda4f68d479268e179952116b01b4a7843490b gunicorn-registry stdout | 2025-09-26 08:36:47,823 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 89decd475e6f64055f123e05a5bd0cf6669ba211aa93fc735f22ef874c7c0a8c gunicorn-registry stdout | 2025-09-26 08:36:47,824 [258] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,824 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:47,824 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:47,824 [258] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:47,826 [258] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:36:47,902 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6?uploadId=68d6509fd73ec60008f933d1&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:47,902 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8r4h-gey7op-lyk', 'x-amz-id-2': 'mg0l8r4h-gey7op-lyk', 'ETag': '"b644e93d229ae01020f6fcaa4005b187"', 'Date': 'Fri, 26 Sep 2025 08:36:47 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:36:47,903 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:47,903 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,903 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:47,903 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,903 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8r4h-gey7op-lyk', 'HostId': 'mg0l8r4h-gey7op-lyk', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8r4h-gey7op-lyk', 'x-amz-id-2': 'mg0l8r4h-gey7op-lyk', 'etag': '"b644e93d229ae01020f6fcaa4005b187"', 'date': 'Fri, 26 Sep 2025 08:36:47 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"b644e93d229ae01020f6fcaa4005b187"'} gunicorn-registry stdout | 2025-09-26 08:36:47,903 [258] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6', 'UploadId': '68d6509fd73ec60008f933d1', 'MultipartUpload': {'Parts': [{'ETag': '"b644e93d229ae01020f6fcaa4005b187"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:36:47,903 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,903 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,903 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,903 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,903 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,903 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,903 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,903 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:47,903 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:47,903 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:47,903 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:47,904 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,904 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,904 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,904 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6', 'query_string': {'uploadId': '68d6509fd73ec60008f933d1'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"b644e93d229ae01020f6fcaa4005b187"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6?uploadId=68d6509fd73ec60008f933d1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6', 'UploadId': '68d6509fd73ec60008f933d1', 'MultipartUpload': {'Parts': [{'ETag': '"b644e93d229ae01020f6fcaa4005b187"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:47,904 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,904 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,904 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,904 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,904 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:47,904 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6 gunicorn-registry stdout | uploadId=68d6509fd73ec60008f933d1 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:960471608ea47a1309828df74dadf908faa5b914ac315870240d73ba5ae75559 gunicorn-registry stdout | x-amz-date:20250926T083647Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 960471608ea47a1309828df74dadf908faa5b914ac315870240d73ba5ae75559 gunicorn-registry stdout | 2025-09-26 08:36:47,904 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083647Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 331aa445b7e575a97f2317bb1f93d6beb5e36c057d817492cba1e24afc0230e4 gunicorn-registry stdout | 2025-09-26 08:36:47,904 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | a2f05bf94b4e3c59f5051e6ff72c1c535b8fbdff24dbb9763d16a12f9850fd7b gunicorn-registry stdout | 2025-09-26 08:36:47,905 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,905 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:47,905 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:47,922 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6?uploadId=68d6509fd73ec60008f933d1 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:36:47,922 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8r6r-187cfp-h7f', 'x-amz-id-2': 'mg0l8r6r-187cfp-h7f', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:36:47 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:47,922 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6"aa8f171de98f25e9144e08ebfa6bca6d-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6?uploadId=68d6509fd73ec60008f933d1' gunicorn-registry stdout | 2025-09-26 08:36:47,922 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,923 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:47,923 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:47,923 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:47,923 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8r6r-187cfp-h7f', 'HostId': 'mg0l8r6r-187cfp-h7f', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8r6r-187cfp-h7f', 'x-amz-id-2': 'mg0l8r6r-187cfp-h7f', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:36:47 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6?uploadId=68d6509fd73ec60008f933d1', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6', 'ETag': '"aa8f171de98f25e9144e08ebfa6bca6d-1"'} gunicorn-registry stdout | 2025-09-26 08:36:47,923 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:47,924 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:47,925 [258] [DEBUG] [data.registry_model.blobuploader] Uploaded 597 bytes to blob e883a005-5c78-41c8-ab03-3447083d3f42 took 0.11421370506286621 seconds gunicorn-registry stdout | 2025-09-26 08:36:47,925 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['e883a005-5c78-41c8-ab03-3447083d3f42', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:47,926 [258] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'e883a005-5c78-41c8-ab03-3447083d3f42', 597, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwZjEiXX0sInZhcmlhbnQiOiJ2OCJ9OThlZDkxNmQxZmE4MzAxYjM2YTQ0ZGQxNGZjNDBlYmE1YTA1OTA1ZGE2ORUAAAAAAAAAABIAAAAAAAA4SjfaczJd+qA3RUkfZWESSsY3UnnTTxb9wlrnU3/mY5RiLg==', 9, '{"chunks": [["uploads/8fd2b00e-8297-447b-8b47-28f6d03ef8a6", 0, 597]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 36, 47, 755931), None, None, 23]) gunicorn-registry stdout | 2025-09-26 08:36:47,928 [258] [DEBUG] [app] Ending request: urn:request:0cb60c1a-c863-4459-8acd-39e4474bc24d (/v2/testorg/alpine/blobs/uploads/e883a005-5c78-41c8-ab03-3447083d3f42) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:0cb60c1a-c863-4459-8acd-39e4474bc24d', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/e883a005-5c78-41c8-ab03-3447083d3f42', 'path': '/v2/testorg/alpine/blobs/uploads/e883a005-5c78-41c8-ab03-3447083d3f42', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:47,928 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:47,929 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:47,929 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:47 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/e883a005-5c78-41c8-ab03-3447083d3f42 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:47 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/e883a005-5c78-41c8-ab03-3447083d3f42 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.132 2369 0.131) securityworker stdout | 2025-09-26 08:36:48,113 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "POST /indexer/api/v1/index_report HTTP/1.1" 201 None securityworker stdout | 2025-09-26 08:36:48,117 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) securityworker stdout | 2025-09-26 08:36:48,118 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE ("manifestsecuritystatus"."manifest_id" = %s)', [2]) securityworker stdout | 2025-09-26 08:36:48,119 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [2, 2, 2, '""', datetime.datetime(2025, 9, 26, 8, 36, 48, 118698), '37b46b4a70b6f1a19d5e4e18d21f57ff', 4, '{}']) securityworker stdout | 2025-09-26 08:36:48,121 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:36:48,123 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36', 1, 0]) securityworker stdout | 2025-09-26 08:36:48,124 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['35f63725-d817-4fe9-a541-a45a4218f4a4']) securityworker stdout | 2025-09-26 08:36:48,125 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:36:48,125 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:36:48,126 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36'} securityworker stdout | 2025-09-26 08:36:48,126 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,126 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,126 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,126 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:48,126 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,126 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:48,126 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:48,126 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:48,126 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:48,126 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:48,126 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:48,126 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,126 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,126 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,126 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:36:48,126 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:48,126 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:48,126 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,126 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,127 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:36:48,127 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36 securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083648Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:36:48,127 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083648Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | 5b9f986d17399eacb610033e20a100e74cdde06d43a4026f9c261e8cca19db8d securityworker stdout | 2025-09-26 08:36:48,127 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | 1b31fbf17abbbacfa09ad6f781a20f77bf0a26fe98b24290b6239e751afaff88 securityworker stdout | 2025-09-26 08:36:48,127 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,127 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:36:48,127 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:36:48,142 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36 HTTP/1.1" 200 241 securityworker stdout | 2025-09-26 08:36:48,142 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8rcw-4w118t-19dj', 'x-amz-id-2': 'mg0l8rcw-4w118t-19dj', 'ETag': '"c170324d07169ded9b90cce181613f90-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:36 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:48 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:36:48,142 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:36:48,142 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,142 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:36:48,142 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:48,142 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8rcw-4w118t-19dj', 'HostId': 'mg0l8rcw-4w118t-19dj', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8rcw-4w118t-19dj', 'x-amz-id-2': 'mg0l8rcw-4w118t-19dj', 'etag': '"c170324d07169ded9b90cce181613f90-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:36 GMT', 'content-type': 'application/octet-stream', 'content-length': '241', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:36:48 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 36, tzinfo=tzutc()), 'ContentLength': 241, 'ETag': '"c170324d07169ded9b90cce181613f90-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } securityworker stdout | 2025-09-26 08:36:48,145 [86] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL ((SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1") UNION ALL (SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "manifestblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q2"))', [2, 'sha256:0775bf52e81a3cf747ce4b00c80d91adc63a6a121d89b946e8b5a0c9ba509944', 1, 2, 'sha256:7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36', 1, 2, 'sha256:5ff8d76a871d143e3d5bf83dd9a47bdd130b4f9c66d34531b064f0395b77ea6a', 1]) securityworker stdout | 2025-09-26 08:36:48,146 [86] [ERROR] [data.registry_model.registry_oci_model] Could not list manifest layers `3` securityworker stdout | Traceback (most recent call last): securityworker stdout | File "/quay-registry/data/registry_model/registry_oci_model.py", line 666, in list_manifest_layers securityworker stdout | layers = self._list_manifest_layers( securityworker stdout | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ securityworker stdout | File "/quay-registry/data/registry_model/registry_oci_model.py", line 1263, in _list_manifest_layers securityworker stdout | for layer in layers: securityworker stdout | ^^^^^^ securityworker stdout | File "/quay-registry/image/oci/manifest.py", line 308, in get_layers securityworker stdout | command=image_layer.history.command, securityworker stdout | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ securityworker stdout | AttributeError: 'NoneType' object has no attribute 'command' securityworker stdout | 2025-09-26 08:36:48,147 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) securityworker stdout | 2025-09-26 08:36:48,148 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:36:48,149 [86] [WARNING] [data.secscan_model.secscan_v4_model] Cannot index 3/alpine@sha256:bd4199eb785a74df05d995ccf017888413746b5566e0b401b93a173859f0827f due to manifest being invalid (manifest has no layers) securityworker stdout | 2025-09-26 08:36:48,149 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE (("manifestsecuritystatus"."manifest_id" = %s) AND ("manifestsecuritystatus"."repository_id" = %s))', [3, 2]) securityworker stdout | 2025-09-26 08:36:48,150 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [3, 2, -2, '{}', datetime.datetime(2025, 9, 26, 8, 36, 48, 149928), 'none', 4, '{}']) securityworker stdout | 2025-09-26 08:36:48,152 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) securityworker stdout | 2025-09-26 08:36:48,153 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 1, 0]) securityworker stdout | 2025-09-26 08:36:48,154 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['570164b8-53bc-42a4-b733-6ed2db166d26']) securityworker stdout | 2025-09-26 08:36:48,155 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:36:48,157 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:36:48,157 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5'} securityworker stdout | 2025-09-26 08:36:48,157 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,157 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,157 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,157 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:48,157 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,157 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:48,158 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:48,158 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:48,158 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:48,158 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:48,158 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:48,158 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,158 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,158 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,158 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:36:48,158 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:48,158 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:48,158 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,158 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,158 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:36:48,158 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5 securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083648Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:36:48,158 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083648Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | 818877de938376a08e016c51ba63388c4bde60f399df70a736e3384657c3af7e securityworker stdout | 2025-09-26 08:36:48,158 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | ceb244758662c5e277c2dba4cc4bc12172f6b38227bc532bbbb3e11d135c5b07 securityworker stdout | 2025-09-26 08:36:48,159 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,159 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:36:48,159 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:36:48,174 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5 HTTP/1.1" 200 593 securityworker stdout | 2025-09-26 08:36:48,174 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8rds-5euy5r-1c1u', 'x-amz-id-2': 'mg0l8rds-5euy5r-1c1u', 'ETag': '"fbce6db1c08805ef6b3a57204c111a92-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:38 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '593', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:48 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:36:48,174 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:36:48,175 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,175 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:36:48,175 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:48,175 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8rds-5euy5r-1c1u', 'HostId': 'mg0l8rds-5euy5r-1c1u', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8rds-5euy5r-1c1u', 'x-amz-id-2': 'mg0l8rds-5euy5r-1c1u', 'etag': '"fbce6db1c08805ef6b3a57204c111a92-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:38 GMT', 'content-type': 'application/octet-stream', 'content-length': '593', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:36:48 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 38, tzinfo=tzutc()), 'ContentLength': 593, 'ETag': '"fbce6db1c08805ef6b3a57204c111a92-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } securityworker stdout | 2025-09-26 08:36:48,176 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4', 1, 0]) securityworker stdout | 2025-09-26 08:36:48,178 [86] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL (SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1")', [2, 'sha256:5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c', 1, 2, 'sha256:2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 1]) securityworker stdout | 2025-09-26 08:36:48,179 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['44261819-f5a1-4604-8a17-65081102f10e']) securityworker stdout | 2025-09-26 08:36:48,180 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:36:48,181 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s)', [4]) securityworker stdout | 2025-09-26 08:36:48,182 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) securityworker stdout | 2025-09-26 08:36:48,183 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:36:48,183 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Indexing manifest [4] 3/alpine@sha256:a1c858aaff07c8da76e480d63c94e025c6317862dd2825c5ab2f4bf138a4c5dd securityworker stdout | 2025-09-26 08:36:48,183 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,183 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,184 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,184 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:48,184 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,184 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:48,184 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:48,184 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:48,184 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:48,184 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:48,184 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:48,185 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:48,185 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,185 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:48,185 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:48,185 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876408 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c securityworker stdout | 2025-09-26 08:36:48,191 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQTRMQ0pwWVhRaU9qRTNOVGc0TnpVNE1EZ3NJbVY0Y0NJNk1UYzFPRGczTmpRd09Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4MVpDODFaR1JtWWpSaE56RmlNVGxsTm1SalpEVXlZamxqTkRZeE9UTmlOakkwT1dObU9XSXpPVE13TUdZd1pqWTJOR1l3WkRZNE1qUTJNMkUwWkRRNFpUWmpQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDB5SlRKQ1NVYzFZMmRyTVZOalJYTjZNazlSVEZGS1pXOU9RVzlSVVNVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1EZ2lMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuV1lkeFczV19UTm5EcXlNeF9KWmVfRjhZaFBsSVJXNXpKY29WOExXblZ6UEt0dGFhZ3dFNUZzUDlFampkUFJQQl9qRktXRnVhLUpadnlIdFhCNmhGNG96SzV0T2VfaEZUY19SNDFsN2s5aTFBVloyYzBmTG80UXdTa2xfT1hXdXoyLXoxMDk1bzg3d0czUFJ3ajh2TXBMMzVmbjB2M2xZa2swNHNES1JMeFNSV1c3bFdreU82Nl9mSkk4MEtLbDdjLVRhTGZ4Y3pwLVQ2d2FRcVFXa0ZWRUUxQ0RsN2lWM2xlQmZxZjdPR1I2eE5UVks3cXRPSW5DbUVQRlRsbWRJaURuaWtQZGRwRUNLVHdkOHI5c1MwRldBY2lDNmRPeW1FSmh1cTFmdkd6NzgtejczbFFrblhybXhURm5paUlKTF9CemZYdHpManBlOHU3X0hSSnRGQ3hB/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=2%2BIG5cgk1ScEsz2OQLQJeoNAoQQ%3D&Expires=1758876408 securityworker stdout | 2025-09-26 08:36:48,192 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,192 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,192 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,192 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:48,192 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,192 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:48,192 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:48,192 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:48,192 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:48,192 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:48,192 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:48,192 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:48,192 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,192 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:48,192 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:48,192 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876408 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c securityworker stdout | 2025-09-26 08:36:48,199 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQTRMQ0pwWVhRaU9qRTNOVGc0TnpVNE1EZ3NJbVY0Y0NJNk1UYzFPRGczTmpRd09Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4MVpDODFaR1JtWWpSaE56RmlNVGxsTm1SalpEVXlZamxqTkRZeE9UTmlOakkwT1dObU9XSXpPVE13TUdZd1pqWTJOR1l3WkRZNE1qUTJNMkUwWkRRNFpUWmpQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDB5SlRKQ1NVYzFZMmRyTVZOalJYTjZNazlSVEZGS1pXOU9RVzlSVVNVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1EZ2lMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuV1lkeFczV19UTm5EcXlNeF9KWmVfRjhZaFBsSVJXNXpKY29WOExXblZ6UEt0dGFhZ3dFNUZzUDlFampkUFJQQl9qRktXRnVhLUpadnlIdFhCNmhGNG96SzV0T2VfaEZUY19SNDFsN2s5aTFBVloyYzBmTG80UXdTa2xfT1hXdXoyLXoxMDk1bzg3d0czUFJ3ajh2TXBMMzVmbjB2M2xZa2swNHNES1JMeFNSV1c3bFdreU82Nl9mSkk4MEtLbDdjLVRhTGZ4Y3pwLVQ2d2FRcVFXa0ZWRUUxQ0RsN2lWM2xlQmZxZjdPR1I2eE5UVks3cXRPSW5DbUVQRlRsbWRJaURuaWtQZGRwRUNLVHdkOHI5c1MwRldBY2lDNmRPeW1FSmh1cTFmdkd6NzgtejczbFFrblhybXhURm5paUlKTF9CemZYdHpManBlOHU3X0hSSnRGQ3hB/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5d/5ddfb4a71b19e6dcd52b9c46193b6249cf9b39300f0f664f0d682463a4d48e6c?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=2%2BIG5cgk1ScEsz2OQLQJeoNAoQQ%3D&Expires=1758876408 securityworker stdout | 2025-09-26 08:36:48,199 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,199 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,199 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,199 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:48,199 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,199 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:48,199 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:48,199 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:48,199 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:48,199 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:48,199 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:48,199 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:48,199 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-web stdout | 2025-09-26 08:36:48,200 [249] [DEBUG] [app] Starting request: urn:request:9ef96133-986c-4834-b42e-275911c4d08b (/health/instance) {'X-Forwarded-For': '10.130.2.2'} securityworker stdout | 2025-09-26 08:36:48,200 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:48,200 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:48,200 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876408 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:36:48,207 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQTRMQ0pwWVhRaU9qRTNOVGc0TnpVNE1EZ3NJbVY0Y0NJNk1UYzFPRGczTmpRd09Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFQWXpaQlprdHRRbVZHZEdsQlRVOUdkRmROZUhObk1EazVRVVVsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRBNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAua3BrTnNxZlJVNGdDLWp2VVk4UERZMGRMSUFMMlNweG91Q0dRWkxoMVAzWm1lclY0SnBad0NsTUNuTEJEUVNnZldGQWp6cXJ2eUhzeFczMVBfLUpTSXdKWnd3V1MtVXM2VHdMVjFvZ3c4cUFBaHNsS0R3Nlp6WjdoY09xU1B4ZG02MjhNaXp0YW1zR01lbGVJUG54OHFEdHBhMmE5NFFaZ3BKaE5DRTFvZDd3aHNtcFN0LTBQckt4cGZUb3RuVTkwWDI2Zm0tRXhnY2dENTROWnFOQmtMdU5kNkVvT0NYQkltWWMzTnF4MkV6NTZvT0Q1TEtlQ0RjNmFTN0xzQlBtM2swZmw3X0dfZVpWU1Z1clp3b0U5bHZDcmdLOTJCMVlvN0tSR3F1bU1ZVjhvRC1EdFdueWN2aG55Z3pCZUlDeEd1RGFSaFBBdlRrdG4tSnJjSU5CUWRR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=Oc6AfKmBeFtiAMOFtWMxsg099AE%3D&Expires=1758876408 securityworker stdout | 2025-09-26 08:36:48,207 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,207 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,207 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,207 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:48,207 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,207 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:48,207 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:48,207 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:48,207 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:48,208 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:48,208 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:48,208 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:48,208 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:48,208 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:48,208 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:48,208 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876408 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 gunicorn-web stdout | 2025-09-26 08:36:48,212 [249] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:36:48,214 [251] [DEBUG] [app] Starting request: urn:request:e5145012-61b0-4601-928f-002a43f4364b (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:36:48,215 [251] [DEBUG] [app] Ending request: urn:request:e5145012-61b0-4601-928f-002a43f4364b (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:e5145012-61b0-4601-928f-002a43f4364b', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:36:48,215 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:36:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:36:48,216 [249] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:36:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.002) securityworker stdout | 2025-09-26 08:36:48,217 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQTRMQ0pwWVhRaU9qRTNOVGc0TnpVNE1EZ3NJbVY0Y0NJNk1UYzFPRGczTmpRd09Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFQWXpaQlprdHRRbVZHZEdsQlRVOUdkRmROZUhObk1EazVRVVVsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRBNElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAua3BrTnNxZlJVNGdDLWp2VVk4UERZMGRMSUFMMlNweG91Q0dRWkxoMVAzWm1lclY0SnBad0NsTUNuTEJEUVNnZldGQWp6cXJ2eUhzeFczMVBfLUpTSXdKWnd3V1MtVXM2VHdMVjFvZ3c4cUFBaHNsS0R3Nlp6WjdoY09xU1B4ZG02MjhNaXp0YW1zR01lbGVJUG54OHFEdHBhMmE5NFFaZ3BKaE5DRTFvZDd3aHNtcFN0LTBQckt4cGZUb3RuVTkwWDI2Zm0tRXhnY2dENTROWnFOQmtMdU5kNkVvT0NYQkltWWMzTnF4MkV6NTZvT0Q1TEtlQ0RjNmFTN0xzQlBtM2swZmw3X0dfZVpWU1Z1clp3b0U5bHZDcmdLOTJCMVlvN0tSR3F1bU1ZVjhvRC1EdFdueWN2aG55Z3pCZUlDeEd1RGFSaFBBdlRrdG4tSnJjSU5CUWRR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=Oc6AfKmBeFtiAMOFtWMxsg099AE%3D&Expires=1758876408 gunicorn-web stdout | 2025-09-26 08:36:48,217 [249] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost securityworker stdout | 2025-09-26 08:36:48,217 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:36:48,217 [86] [DEBUG] [util.secscan.v4.api] POSTing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_report gunicorn-web stdout | 2025-09-26 08:36:48,218 [249] [DEBUG] [app] Starting request: urn:request:66554642-2271-4c23-92d2-79042c3c0a75 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:36:48,219 [249] [DEBUG] [app] Ending request: urn:request:66554642-2271-4c23-92d2-79042c3c0a75 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:66554642-2271-4c23-92d2-79042c3c0a75', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:36:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:36:48,219 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:36:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:36:48,220 [249] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:36:48,220 [249] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:36:48,220 [249] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:36:48,220 [249] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:36:48,225 [249] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:36:48,225 [249] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:36:48,230 [249] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:36:48,231 [249] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:36:48,232 [249] [DEBUG] [app] Ending request: urn:request:9ef96133-986c-4834-b42e-275911c4d08b (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:9ef96133-986c-4834-b42e-275911c4d08b', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:36:48,232 [249] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:36:48,232 [249] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:36:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:36:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.033 118 0.033) gunicorn-web stdout | 2025-09-26 08:36:48,261 [249] [DEBUG] [app] Starting request: urn:request:c991084e-b37e-4f3e-a05b-1c122438ff5b (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:36:48,263 [258] [DEBUG] [app] Starting request: urn:request:9605101e-d925-41b5-9dc5-32c57e1c56b8 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:36:48,263 [258] [DEBUG] [app] Ending request: urn:request:9605101e-d925-41b5-9dc5-32c57e1c56b8 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:9605101e-d925-41b5-9dc5-32c57e1c56b8', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:36:48,263 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:36:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:36:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:36:48,264 [249] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:36:48,264 [249] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:36:48,266 [247] [DEBUG] [app] Starting request: urn:request:e5d439e8-9760-4625-bc12-7d90628592b3 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:36:48,267 [247] [DEBUG] [app] Ending request: urn:request:e5d439e8-9760-4625-bc12-7d90628592b3 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:e5d439e8-9760-4625-bc12-7d90628592b3', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:36:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.002) gunicorn-web stdout | 2025-09-26 08:36:48,267 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:36:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:36:48,267 [249] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:36:48,268 [249] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:36:48,268 [249] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:36:48,268 [249] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:36:48,272 [249] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:36:48,272 [249] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:36:48,276 [249] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:36:48,277 [249] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:36:48,278 [249] [DEBUG] [app] Ending request: urn:request:c991084e-b37e-4f3e-a05b-1c122438ff5b (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:c991084e-b37e-4f3e-a05b-1c122438ff5b', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:36:48,278 [249] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:36:48,278 [249] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:36:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:36:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.018 118 0.018) securityworker stdout | 2025-09-26 08:36:48,732 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} gunicorn-registry stdout | 2025-09-26 08:36:48,948 [255] [DEBUG] [app] Starting request: urn:request:c841438a-f872-4739-bc3f-ea5f78915f42 (/v2/testorg/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:48,948 [255] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:48,948 [255] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:48,948 [255] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:48,949 [255] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:48,949 [255] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:48,950 [255] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:48,950 [255] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:48,950 [255] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:48,951 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:48,952 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:48,954 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:48,955 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:48,956 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:48,957 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:48,958 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:48,960 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:48,961 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "imagestoragelocation" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:48,962 [255] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [2, 'a147e68a-b723-48e8-ada5-d6528b03f3df', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 36, 48, 961754)]) gunicorn-registry stdout | 2025-09-26 08:36:48,965 [255] [DEBUG] [app] Ending request: urn:request:c841438a-f872-4739-bc3f-ea5f78915f42 (/v2/testorg/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:c841438a-f872-4739-bc3f-ea5f78915f42', 'remote_addr': '10.129.4.11', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/', 'path': '/v2/testorg/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:48,965 [255] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:48,965 [255] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:48,965 [255] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:48 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:48 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.018 1693 0.018) gunicorn-registry stdout | 2025-09-26 08:36:49,016 [251] [DEBUG] [app] Starting request: urn:request:895a3e8c-1b14-4604-91c0-947a82c56ed2 (/v2/testorg/alpine/blobs/uploads/8f9ed9fe-c885-428d-927b-8cd3d2ff30b8) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:49,016 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '8f9ed9fe-c885-428d-927b-8cd3d2ff30b8', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:49,016 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:49,016 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:49,017 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:49,017 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:49,017 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:49,017 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:49,017 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:49,019 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,020 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,021 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,022 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,023 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,024 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,025 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,026 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:49,027 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['8f9ed9fe-c885-428d-927b-8cd3d2ff30b8', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,028 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:49,028 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:49,028 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:49,029 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:49,029 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:49,029 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,029 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,029 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,029 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,029 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,029 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,029 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,030 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,030 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:49,030 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:49,030 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:49,030 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:49,030 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,030 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,030 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,030 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:49,030 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,030 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,030 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,030 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,031 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:49,031 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083649Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:49,031 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083649Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 93d156e8216232a2abbbc2edd0469867dd13608185beab0148df5bcb33bed711 gunicorn-registry stdout | 2025-09-26 08:36:49,031 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | eadd0665033300d92fb2e2eb3a2aeef934e374dc510f8c01921bbde54e27e141 gunicorn-registry stdout | 2025-09-26 08:36:49,031 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,031 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:49,031 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:49,039 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:49,039 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8s20-3b44cu-10i7', 'x-amz-id-2': 'mg0l8s20-3b44cu-10i7', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:49,039 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc268d650a1d73ec60008f933da' gunicorn-registry stdout | 2025-09-26 08:36:49,039 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,039 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:49,039 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,039 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8s20-3b44cu-10i7', 'HostId': 'mg0l8s20-3b44cu-10i7', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8s20-3b44cu-10i7', 'x-amz-id-2': 'mg0l8s20-3b44cu-10i7', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2', 'UploadId': '68d650a1d73ec60008f933da'} gunicorn-registry stdout | 2025-09-26 08:36:49,039 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:49,040 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:36:49,040 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:36:49,041 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2', 'UploadId': '68d650a1d73ec60008f933da', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1be5735b0>, 'ContentLength': 5749} gunicorn-registry stdout | 2025-09-26 08:36:49,041 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,041 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,041 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,041 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,041 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,041 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,041 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,041 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,041 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:49,041 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:49,041 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:49,041 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:49,041 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,041 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,042 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:36:49,042 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,042 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,042 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2', 'query_string': {'uploadId': '68d650a1d73ec60008f933da', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '5749', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'dUG+Ya6BkWSrSnaXVc+6hg==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1be5735b0>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2?uploadId=68d650a1d73ec60008f933da&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2', 'UploadId': '68d650a1d73ec60008f933da', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1be5735b0>, 'ContentLength': 5749}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:49,042 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,042 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,042 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,042 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,042 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:49,042 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2 gunicorn-registry stdout | partNumber=1&uploadId=68d650a1d73ec60008f933da gunicorn-registry stdout | content-length:5749 gunicorn-registry stdout | content-md5:dUG+Ya6BkWSrSnaXVc+6hg== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083649Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:49,042 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083649Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 863c15727aefb0a25ed991278ba7cebd21d52a763b3298eef954aaea530152c7 gunicorn-registry stdout | 2025-09-26 08:36:49,042 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | d8272d229d46b2c2e3a9e88e3ae7cabcc022d65cd6f74471179bf118c778dde9 gunicorn-registry stdout | 2025-09-26 08:36:49,042 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,042 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:49,043 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:49,043 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:49,045 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:36:49,125 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2?uploadId=68d650a1d73ec60008f933da&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:49,125 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8s2c-3hye65-2xu', 'x-amz-id-2': 'mg0l8s2c-3hye65-2xu', 'ETag': '"7541be61ae819164ab4a769755cfba86"', 'Date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:36:49,125 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:49,125 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,125 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:49,125 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,125 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8s2c-3hye65-2xu', 'HostId': 'mg0l8s2c-3hye65-2xu', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8s2c-3hye65-2xu', 'x-amz-id-2': 'mg0l8s2c-3hye65-2xu', 'etag': '"7541be61ae819164ab4a769755cfba86"', 'date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"7541be61ae819164ab4a769755cfba86"'} gunicorn-registry stdout | 2025-09-26 08:36:49,126 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2', 'UploadId': '68d650a1d73ec60008f933da', 'MultipartUpload': {'Parts': [{'ETag': '"7541be61ae819164ab4a769755cfba86"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:36:49,126 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,126 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,126 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,126 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,126 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,126 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,126 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,126 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:49,126 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:49,126 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:49,126 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:49,126 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,126 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,126 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,127 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2', 'query_string': {'uploadId': '68d650a1d73ec60008f933da'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"7541be61ae819164ab4a769755cfba86"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2?uploadId=68d650a1d73ec60008f933da', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2', 'UploadId': '68d650a1d73ec60008f933da', 'MultipartUpload': {'Parts': [{'ETag': '"7541be61ae819164ab4a769755cfba86"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:49,127 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,127 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,127 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,127 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,127 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:49,128 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2 gunicorn-registry stdout | uploadId=68d650a1d73ec60008f933da gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:690d9c5ccf0bdf8cf1026c6107578ff6d48ea699e47d2b47bbbf07d5798604e6 gunicorn-registry stdout | x-amz-date:20250926T083649Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 690d9c5ccf0bdf8cf1026c6107578ff6d48ea699e47d2b47bbbf07d5798604e6 gunicorn-registry stdout | 2025-09-26 08:36:49,128 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083649Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 960a2797ae0db8469ad473b4bf60d02d7d3ba735cab6f83ae7e9d16cb97e62fe gunicorn-registry stdout | 2025-09-26 08:36:49,128 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 03068f8bc3bfc087eed0b748d79b6b0538b474bfabeb12ad461fc70c82d9c76a gunicorn-registry stdout | 2025-09-26 08:36:49,128 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,128 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:49,128 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:49,145 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2?uploadId=68d650a1d73ec60008f933da HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:36:49,145 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8s4r-4xl0ok-xm1', 'x-amz-id-2': 'mg0l8s4r-4xl0ok-xm1', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:49,145 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2"13bd928752c06ba71e4750bf5a90b84d-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2?uploadId=68d650a1d73ec60008f933da' gunicorn-registry stdout | 2025-09-26 08:36:49,145 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,146 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,146 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:49,146 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,146 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8s4r-4xl0ok-xm1', 'HostId': 'mg0l8s4r-4xl0ok-xm1', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8s4r-4xl0ok-xm1', 'x-amz-id-2': 'mg0l8s4r-4xl0ok-xm1', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2?uploadId=68d650a1d73ec60008f933da', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2', 'ETag': '"13bd928752c06ba71e4750bf5a90b84d-1"'} gunicorn-registry stdout | 2025-09-26 08:36:49,146 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:49,147 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:49,147 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 5749 bytes to blob 8f9ed9fe-c885-428d-927b-8cd3d2ff30b8 took 0.1188201904296875 seconds gunicorn-registry stdout | 2025-09-26 08:36:49,147 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['8f9ed9fe-c885-428d-927b-8cd3d2ff30b8', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,148 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, '8f9ed9fe-c885-428d-927b-8cd3d2ff30b8', 5749, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwaHR0cHM6Ly9tb2J5cHJvamVjdC5vcmcvYnVpbGRraXRAdjEjaGVybWV0aWMiOnRydWV9fX01OTQxfV1dfX0sIjUAAAAAAAAAALIAAAAAAABCvht6PleLQT8dPeCcaYwXXuzwcAfubFPNJ1+ddOVRe5RiLg==', 9, '{"chunks": [["uploads/b33f0ad4-af4f-41c2-9bff-8d97fc882dc2", 0, 5749]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 36, 48, 971062), None, None, 25]) gunicorn-registry stdout | 2025-09-26 08:36:49,150 [251] [DEBUG] [app] Ending request: urn:request:895a3e8c-1b14-4604-91c0-947a82c56ed2 (/v2/testorg/alpine/blobs/uploads/8f9ed9fe-c885-428d-927b-8cd3d2ff30b8) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:895a3e8c-1b14-4604-91c0-947a82c56ed2', 'remote_addr': '10.129.4.11', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/8f9ed9fe-c885-428d-927b-8cd3d2ff30b8', 'path': '/v2/testorg/alpine/blobs/uploads/8f9ed9fe-c885-428d-927b-8cd3d2ff30b8', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:49,150 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:49,150 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:49,151 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:49 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/8f9ed9fe-c885-428d-927b-8cd3d2ff30b8 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:49 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/8f9ed9fe-c885-428d-927b-8cd3d2ff30b8 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.136 7522 0.136) gunicorn-registry stdout | 2025-09-26 08:36:49,210 [251] [DEBUG] [app] Starting request: urn:request:27b5dd3a-0392-4a76-9a95-e9f2d4317c2c (/v2/testorg/alpine/blobs/uploads/a147e68a-b723-48e8-ada5-d6528b03f3df) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:49,211 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'a147e68a-b723-48e8-ada5-d6528b03f3df', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:49,211 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:49,211 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:49,212 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:49,212 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:49,212 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:49,212 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:49,212 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:49,213 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,214 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,215 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,216 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,217 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,218 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,219 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,220 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:49,221 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['a147e68a-b723-48e8-ada5-d6528b03f3df', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,222 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:49,222 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:49,222 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:49,222 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:49,223 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d6be4120-17d3-4429-8f76-19d98bb7da3a', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:49,223 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,223 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,223 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,223 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,223 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,223 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,223 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,223 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,223 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:49,223 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:49,223 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:49,223 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:49,223 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,223 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,223 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,223 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/d6be4120-17d3-4429-8f76-19d98bb7da3a?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d6be4120-17d3-4429-8f76-19d98bb7da3a', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d6be4120-17d3-4429-8f76-19d98bb7da3a?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d6be4120-17d3-4429-8f76-19d98bb7da3a', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:49,224 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,224 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,224 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,224 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,224 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:49,224 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d6be4120-17d3-4429-8f76-19d98bb7da3a gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083649Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:49,224 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083649Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 7408e07eb45a6da702de2bff147deb9f62c8a2a646d27c39a56f4643a7a0ac96 gunicorn-registry stdout | 2025-09-26 08:36:49,224 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 4457fd28e585ee6b9cf501a20f4b2e415532ea101f78282f64e843c945e696cc gunicorn-registry stdout | 2025-09-26 08:36:49,224 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,224 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:49,224 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:49,232 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d6be4120-17d3-4429-8f76-19d98bb7da3a?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:49,232 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8s7e-6i351b-zeh', 'x-amz-id-2': 'mg0l8s7e-6i351b-zeh', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:49,232 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/d6be4120-17d3-4429-8f76-19d98bb7da3a68d650a1d73ec60008f933e6' gunicorn-registry stdout | 2025-09-26 08:36:49,232 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,232 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:49,232 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,232 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8s7e-6i351b-zeh', 'HostId': 'mg0l8s7e-6i351b-zeh', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8s7e-6i351b-zeh', 'x-amz-id-2': 'mg0l8s7e-6i351b-zeh', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d6be4120-17d3-4429-8f76-19d98bb7da3a', 'UploadId': '68d650a1d73ec60008f933e6'} gunicorn-registry stdout | 2025-09-26 08:36:49,232 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:49,233 [251] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d6be4120-17d3-4429-8f76-19d98bb7da3a', 'UploadId': '68d650a1d73ec60008f933e6'} gunicorn-registry stdout | 2025-09-26 08:36:49,233 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,233 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,233 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,233 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,233 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,233 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,233 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:49,233 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:49,233 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:49,233 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:49,234 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,234 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,234 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,234 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/d6be4120-17d3-4429-8f76-19d98bb7da3a', 'query_string': {'uploadId': '68d650a1d73ec60008f933e6'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d6be4120-17d3-4429-8f76-19d98bb7da3a', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d6be4120-17d3-4429-8f76-19d98bb7da3a?uploadId=68d650a1d73ec60008f933e6', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d6be4120-17d3-4429-8f76-19d98bb7da3a', 'UploadId': '68d650a1d73ec60008f933e6'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:49,234 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,234 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,234 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,234 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,234 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:49,234 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d6be4120-17d3-4429-8f76-19d98bb7da3a gunicorn-registry stdout | uploadId=68d650a1d73ec60008f933e6 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083649Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:49,234 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083649Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | b1560ea7cc45b3ee3940a248b266ab54de722c1df22eac47c467ff1695e12cf1 gunicorn-registry stdout | 2025-09-26 08:36:49,234 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 0f360780213bcb72046ae06e1bf82a05a09c7a01f062ca1936b9d97e50989b73 gunicorn-registry stdout | 2025-09-26 08:36:49,234 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,234 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:49,235 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:49,242 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d6be4120-17d3-4429-8f76-19d98bb7da3a?uploadId=68d650a1d73ec60008f933e6 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:36:49,242 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8s7o-6o3e7r-xpk', 'x-amz-id-2': 'mg0l8s7o-6o3e7r-xpk', 'Date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:49,242 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:49,242 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,242 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:49,242 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,242 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8s7o-6o3e7r-xpk', 'HostId': 'mg0l8s7o-6o3e7r-xpk', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8s7o-6o3e7r-xpk', 'x-amz-id-2': 'mg0l8s7o-6o3e7r-xpk', 'date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:36:49,242 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob a147e68a-b723-48e8-ada5-d6528b03f3df took 0.020441293716430664 seconds gunicorn-registry stdout | 2025-09-26 08:36:49,243 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['a147e68a-b723-48e8-ada5-d6528b03f3df', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,244 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'a147e68a-b723-48e8-ada5-d6528b03f3df', 81012, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwOGVjOTZkZDEzNTgiLCJyZWxhdGlvbnNoaXBUeXBlIjoiR0VORVJBVEVEX0ZST00ifV19fWIyMjE1M2ZjNmE0ZjQAAAAAAAAAAOIJAAAAAADykcElilJKYLtbo7Z+mVCa/qmeKmGJ3L3SfxNoX2Ffx5RiLg==', 9, '{"chunks": [["uploads/d657156c-0293-4583-a0bb-dcd7f3edde02", 0, 81012]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 36, 48, 961754), None, None, 24]) gunicorn-registry stdout | 2025-09-26 08:36:49,246 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:49,246 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:49,246 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:49,247 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:49,247 [251] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/d4/d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4'} gunicorn-registry stdout | 2025-09-26 08:36:49,247 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,247 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,247 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,247 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,247 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,247 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,247 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,247 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:49,248 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:49,248 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:49,248 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:49,248 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,248 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,248 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,248 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/d4/d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d4/d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d4/d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/d4/d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:49,248 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,248 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,248 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,248 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,248 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:49,248 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d4/d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083649Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:49,248 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083649Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 2e3a82f870a17891653bdcdd0d6deb973c04f7012ac055fda36265cef8c20fc6 gunicorn-registry stdout | 2025-09-26 08:36:49,248 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 25d16bb093ebb55af3dddfa159d6fe7888e387f5c0c103647729f36b0e025db6 gunicorn-registry stdout | 2025-09-26 08:36:49,248 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,248 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:49,249 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:49,254 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d4/d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:36:49,254 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8s82-6wfj9x-1bcv', 'x-amz-id-2': 'mg0l8s82-6wfj9x-1bcv', 'Content-Type': 'application/xml', 'Content-Length': '339', 'Date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:49,254 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:49,254 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,254 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:49,254 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,254 [251] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:36:49,254 [251] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:36:49,254 [251] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/d4/d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4 gunicorn-registry stdout | 2025-09-26 08:36:49,255 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:49,255 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:49,255 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:49,255 [251] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:36:49,255 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,255 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,255 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,255 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,255 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,255 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,255 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,255 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:49,255 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:49,255 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:49,255 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:49,256 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,256 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,256 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,256 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/d657156c-0293-4583-a0bb-dcd7f3edde02', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d657156c-0293-4583-a0bb-dcd7f3edde02', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d657156c-0293-4583-a0bb-dcd7f3edde02', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d657156c-0293-4583-a0bb-dcd7f3edde02'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:49,257 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,257 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,257 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,257 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,257 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,257 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:49,257 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d657156c-0293-4583-a0bb-dcd7f3edde02 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083649Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:49,257 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083649Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 827710ba54cfe1da0fca86e8f590e7ab2c8193ad093b0a97e2a68d66911a06cc gunicorn-registry stdout | 2025-09-26 08:36:49,257 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | ea132b2d76582082160248cac0f7d566a0c8009e0639e370016b381add5fd38e gunicorn-registry stdout | 2025-09-26 08:36:49,257 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,257 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,257 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:49,257 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:49,263 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d657156c-0293-4583-a0bb-dcd7f3edde02 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:49,263 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8s8b-723oy3-x6b', 'x-amz-id-2': 'mg0l8s8b-723oy3-x6b', 'ETag': '"3f4dc804a3bdcd9477d2ca35497b09c9-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:49 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '81012', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:49,263 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:49,264 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,264 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:49,264 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,264 [251] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/d4/d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:36:49,264 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:49,264 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/d4/d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:49,264 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/d4/d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:49,264 [251] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/d4/d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d657156c-0293-4583-a0bb-dcd7f3edde02'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/d4/d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4', 'extra_args': {}, 'callbacks': [], 'size': 81012} gunicorn-registry stdout | 2025-09-26 08:36:49,264 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,264 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,264 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,264 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,264 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,264 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,264 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,264 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,264 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,264 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,265 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:49,265 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:49,265 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:49,265 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:49,265 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,265 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,265 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,265 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/d4/d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d657156c-0293-4583-a0bb-dcd7f3edde02', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d4/d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d4/d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d657156c-0293-4583-a0bb-dcd7f3edde02', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/d4/d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:49,265 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,265 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,265 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,265 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,265 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,266 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:49,266 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d4/d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d657156c-0293-4583-a0bb-dcd7f3edde02 gunicorn-registry stdout | x-amz-date:20250926T083649Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:49,266 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083649Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 8d3edb93997cd6e98902262e5840d535eab4f1a15875d721ed13738860ffbf41 gunicorn-registry stdout | 2025-09-26 08:36:49,266 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 0b87adf5dde2910d6b512f5d723c569d064cd4939b79ab979d83d3e2859d2dbd gunicorn-registry stdout | 2025-09-26 08:36:49,266 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,266 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,266 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:49,266 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:49,267 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:49,294 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d4/d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:36:49,294 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8s8k-778ko0-shs', 'x-amz-id-2': 'mg0l8s8k-778ko0-shs', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:49,294 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:36:49.000Z"3f4dc804a3bdcd9477d2ca35497b09c9-1"' gunicorn-registry stdout | 2025-09-26 08:36:49,294 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,294 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,294 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:49,295 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,295 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:49,295 [251] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob a147e68a-b723-48e8-ada5-d6528b03f3df with digest sha256:d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4 took 0.04085350036621094 seconds gunicorn-registry stdout | 2025-09-26 08:36:49,295 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['a147e68a-b723-48e8-ada5-d6528b03f3df', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,297 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,297 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['763f23f4-2297-4ba7-b3a9-6097f7462c3c', 81012, None, True, True, 'sha256:d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4']) gunicorn-registry stdout | 2025-09-26 08:36:49,298 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [25, 9]) gunicorn-registry stdout | 2025-09-26 08:36:49,299 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,299 [251] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [2, 25, datetime.datetime(2025, 9, 26, 8, 36, 49, 299419), datetime.datetime(2025, 9, 26, 9, 36, 49, 299405)]) gunicorn-registry stdout | 2025-09-26 08:36:49,300 [251] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [24]) gunicorn-registry stdout | 2025-09-26 08:36:49,302 [251] [DEBUG] [app] Ending request: urn:request:27b5dd3a-0392-4a76-9a95-e9f2d4317c2c (/v2/testorg/alpine/blobs/uploads/a147e68a-b723-48e8-ada5-d6528b03f3df) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:27b5dd3a-0392-4a76-9a95-e9f2d4317c2c', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/a147e68a-b723-48e8-ada5-d6528b03f3df?digest=sha256:d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4', 'path': '/v2/testorg/alpine/blobs/uploads/a147e68a-b723-48e8-ada5-d6528b03f3df', 'parameters': {'digest': 'sha256:d405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:49,302 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:49,302 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:49,302 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:49 +0000] "PUT /v2/testorg/alpine/blobs/uploads/a147e68a-b723-48e8-ada5-d6528b03f3df?digest=sha256%3Ad405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:49 +0000] "PUT /v2/testorg/alpine/blobs/uploads/a147e68a-b723-48e8-ada5-d6528b03f3df?digest=sha256%3Ad405333e75d435c8468c7783fb12c5d4b72dc8e61369e4a584f5fe26cf4a63b4 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.092 1849 0.092) gunicorn-registry stdout | 2025-09-26 08:36:49,460 [251] [DEBUG] [app] Starting request: urn:request:3f8f2158-ff39-469d-bb03-b1ff1310b9ba (/v2/testorg/alpine/blobs/sha256:5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:49,461 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:49,461 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:49,461 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:49,461 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:49,462 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:49,462 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:49,462 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:49,462 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:49,463 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,464 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,465 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:49,465 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283_2 gunicorn-registry stdout | 2025-09-26 08:36:49,465 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:49,466 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,467 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,468 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,469 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,471 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,472 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283_2: None gunicorn-registry stdout | 2025-09-26 08:36:49,472 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283_2: None gunicorn-registry stdout | 2025-09-26 08:36:49,472 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:49,472 [251] [DEBUG] [app] Ending request: urn:request:3f8f2158-ff39-469d-bb03-b1ff1310b9ba (/v2/testorg/alpine/blobs/sha256:5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:3f8f2158-ff39-469d-bb03-b1ff1310b9ba', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 'path': '/v2/testorg/alpine/blobs/sha256:5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:49,472 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:49,472 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:49,473 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:49 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:49 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.013 1714 0.012) gunicorn-registry stdout | 2025-09-26 08:36:49,592 [251] [DEBUG] [app] Starting request: urn:request:5e81543e-42ad-4fef-a76b-a28ee7d2c54f (/v2/testorg/alpine/blobs/uploads/7989b191-5e8e-4ca1-89f3-a0b5afec6373) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:49,592 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '7989b191-5e8e-4ca1-89f3-a0b5afec6373', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:49,592 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:49,592 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:49,593 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:49,593 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:49,593 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:49,593 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:49,593 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:49,594 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,595 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,596 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,597 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,598 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,599 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,600 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,601 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:49,602 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['7989b191-5e8e-4ca1-89f3-a0b5afec6373', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,603 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:49,603 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:49,603 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:49,604 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:49,604 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:49,604 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,605 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,605 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,605 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,605 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,605 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,605 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,605 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,605 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:49,605 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:49,605 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:49,605 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:49,605 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,605 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,605 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,605 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:49,605 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,605 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,605 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,605 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,606 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:49,606 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083649Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:49,606 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083649Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | bfe0ef70eab1a1515b5f48ae15a98c45215c3647853c9c9cf1cf8c6807768bdf gunicorn-registry stdout | 2025-09-26 08:36:49,606 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | f8964974fc3a4beeee9d315b7826fb6a32be17ab3ebfef4effe35444eb9d8d22 gunicorn-registry stdout | 2025-09-26 08:36:49,606 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,606 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:49,607 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:49,613 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:49,613 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8si0-ctsiag-11ur', 'x-amz-id-2': 'mg0l8si0-ctsiag-11ur', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:49,613 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b368d650a1d73ec60008f933ec' gunicorn-registry stdout | 2025-09-26 08:36:49,613 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,613 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:49,613 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,613 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8si0-ctsiag-11ur', 'HostId': 'mg0l8si0-ctsiag-11ur', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8si0-ctsiag-11ur', 'x-amz-id-2': 'mg0l8si0-ctsiag-11ur', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3', 'UploadId': '68d650a1d73ec60008f933ec'} gunicorn-registry stdout | 2025-09-26 08:36:49,613 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:49,614 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:36:49,614 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:36:49,614 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3', 'UploadId': '68d650a1d73ec60008f933ec', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89a7e70>, 'ContentLength': 241} gunicorn-registry stdout | 2025-09-26 08:36:49,614 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,614 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,614 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,614 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,614 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,614 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,614 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,615 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,615 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:49,615 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:49,615 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:49,615 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:49,615 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,615 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,615 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:36:49,615 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,615 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,615 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3', 'query_string': {'uploadId': '68d650a1d73ec60008f933ec', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '241', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': '9G8nKg9EnjIgm8xSFSAXPQ==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b89a7e70>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3?uploadId=68d650a1d73ec60008f933ec&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3', 'UploadId': '68d650a1d73ec60008f933ec', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89a7e70>, 'ContentLength': 241}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:49,615 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,615 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,615 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,615 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,616 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:49,616 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3 gunicorn-registry stdout | partNumber=1&uploadId=68d650a1d73ec60008f933ec gunicorn-registry stdout | content-length:241 gunicorn-registry stdout | content-md5:9G8nKg9EnjIgm8xSFSAXPQ== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083649Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:49,616 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083649Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 5959c019b012d8a733ea94ff0dda12a2e9bfc14ef1822509a06d54778b3d921c gunicorn-registry stdout | 2025-09-26 08:36:49,616 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 23942e96933389c8117b4fbc32a4ea046e68ad0302aaae556d3241800cddfa72 gunicorn-registry stdout | 2025-09-26 08:36:49,616 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,616 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:49,616 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:49,617 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:49,618 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:36:49,677 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3?uploadId=68d650a1d73ec60008f933ec&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:49,677 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8si9-cz7whz-1cuj', 'x-amz-id-2': 'mg0l8si9-cz7whz-1cuj', 'ETag': '"f46f272a0f449e32209bcc521520173d"', 'Date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:36:49,678 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:49,678 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,678 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:49,678 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,678 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8si9-cz7whz-1cuj', 'HostId': 'mg0l8si9-cz7whz-1cuj', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8si9-cz7whz-1cuj', 'x-amz-id-2': 'mg0l8si9-cz7whz-1cuj', 'etag': '"f46f272a0f449e32209bcc521520173d"', 'date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"f46f272a0f449e32209bcc521520173d"'} gunicorn-registry stdout | 2025-09-26 08:36:49,678 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3', 'UploadId': '68d650a1d73ec60008f933ec', 'MultipartUpload': {'Parts': [{'ETag': '"f46f272a0f449e32209bcc521520173d"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:36:49,678 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,678 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,678 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,678 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,678 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,679 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,679 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,679 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:49,679 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:49,679 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:49,679 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:49,679 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,679 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,679 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,679 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3', 'query_string': {'uploadId': '68d650a1d73ec60008f933ec'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"f46f272a0f449e32209bcc521520173d"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3?uploadId=68d650a1d73ec60008f933ec', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3', 'UploadId': '68d650a1d73ec60008f933ec', 'MultipartUpload': {'Parts': [{'ETag': '"f46f272a0f449e32209bcc521520173d"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:49,679 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,679 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,679 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,679 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,679 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:49,679 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3 gunicorn-registry stdout | uploadId=68d650a1d73ec60008f933ec gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:04a748c52aa6bbd14c3e17b91ee704f3989c5cb61db19802376c317f5e1260bd gunicorn-registry stdout | x-amz-date:20250926T083649Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 04a748c52aa6bbd14c3e17b91ee704f3989c5cb61db19802376c317f5e1260bd gunicorn-registry stdout | 2025-09-26 08:36:49,680 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083649Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 7994303f4fd762858c5b0995b7c588a75df9a72dc18c8189d1aa1c9377ca1c32 gunicorn-registry stdout | 2025-09-26 08:36:49,680 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 3faa53575e56f910255c77217670763de08bb383b41423e986b77308c81ea65e gunicorn-registry stdout | 2025-09-26 08:36:49,680 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,680 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:49,680 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:49,695 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3?uploadId=68d650a1d73ec60008f933ec HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:36:49,695 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8sk1-e16vo2-p42', 'x-amz-id-2': 'mg0l8sk1-e16vo2-p42', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:49,695 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3"ff5f07fe308df34f73245cf8878c3b21-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3?uploadId=68d650a1d73ec60008f933ec' gunicorn-registry stdout | 2025-09-26 08:36:49,695 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,695 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,695 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:49,695 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,695 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8sk1-e16vo2-p42', 'HostId': 'mg0l8sk1-e16vo2-p42', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8sk1-e16vo2-p42', 'x-amz-id-2': 'mg0l8sk1-e16vo2-p42', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3?uploadId=68d650a1d73ec60008f933ec', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3', 'ETag': '"ff5f07fe308df34f73245cf8878c3b21-1"'} gunicorn-registry stdout | 2025-09-26 08:36:49,695 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:49,696 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:49,696 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 241 bytes to blob 7989b191-5e8e-4ca1-89f3-a0b5afec6373 took 0.09307670593261719 seconds gunicorn-registry stdout | 2025-09-26 08:36:49,697 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['7989b191-5e8e-4ca1-89f3-a0b5afec6373', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,698 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, '7989b191-5e8e-4ca1-89f3-a0b5afec6373', 241, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwMzRlOTZjZTYxZTA0MTRkMmU1MGQxYzQ2OWQ2OGEyMGJjNzMyMzllYmNlNDgzIl19fTM5YzJjOTRlMzk1M2FlZDEAAAAAAAAAAAYAAAAAAADsob+bMuAgAGJ3yK1TcbIwgdyFuUvGgWhxTeKQypIvNZRiLg==', 9, '{"chunks": [["uploads/480fdebe-7391-414a-9acf-41586b04e8b3", 0, 241]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 36, 49, 546321), None, None, 26]) gunicorn-registry stdout | 2025-09-26 08:36:49,700 [251] [DEBUG] [app] Ending request: urn:request:5e81543e-42ad-4fef-a76b-a28ee7d2c54f (/v2/testorg/alpine/blobs/uploads/7989b191-5e8e-4ca1-89f3-a0b5afec6373) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:5e81543e-42ad-4fef-a76b-a28ee7d2c54f', 'remote_addr': '10.129.4.11', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/7989b191-5e8e-4ca1-89f3-a0b5afec6373', 'path': '/v2/testorg/alpine/blobs/uploads/7989b191-5e8e-4ca1-89f3-a0b5afec6373', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:49,700 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:49,701 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:49,701 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:49 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/7989b191-5e8e-4ca1-89f3-a0b5afec6373 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:49 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/7989b191-5e8e-4ca1-89f3-a0b5afec6373 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.110 2013 0.110) gunicorn-registry stdout | 2025-09-26 08:36:49,741 [251] [DEBUG] [app] Starting request: urn:request:b938785d-c98a-48ca-ab8b-129b372fc80c (/v2/testorg/alpine/blobs/uploads/7989b191-5e8e-4ca1-89f3-a0b5afec6373) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:49,741 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '7989b191-5e8e-4ca1-89f3-a0b5afec6373', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:49,741 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:49,741 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:49,742 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:49,742 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:49,742 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:49,742 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:49,742 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:49,743 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,744 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,745 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,747 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,748 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,748 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,750 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,751 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:49,752 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['7989b191-5e8e-4ca1-89f3-a0b5afec6373', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,752 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:49,753 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:49,753 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:49,753 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:49,753 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/c35558dc-67a9-43d3-85d6-ffeff07a8441', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:49,753 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,753 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,753 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,754 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,754 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,754 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,754 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,754 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,754 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:49,754 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:49,754 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:49,754 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:49,754 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,754 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,754 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,754 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/c35558dc-67a9-43d3-85d6-ffeff07a8441?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/c35558dc-67a9-43d3-85d6-ffeff07a8441', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/c35558dc-67a9-43d3-85d6-ffeff07a8441?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/c35558dc-67a9-43d3-85d6-ffeff07a8441', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:49,754 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,754 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,754 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,754 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,754 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:49,754 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/c35558dc-67a9-43d3-85d6-ffeff07a8441 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083649Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:49,754 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083649Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | ab1bf362dbdede3d1b79d61d0bb3cc3a102ba8f669fe6535e4d3da2fab53159f gunicorn-registry stdout | 2025-09-26 08:36:49,755 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 9cd706b1dc0d06747d5967d6b71a1277e41e9cf9b7f698313bf257bd217ff122 gunicorn-registry stdout | 2025-09-26 08:36:49,755 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,755 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:49,755 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:49,763 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/c35558dc-67a9-43d3-85d6-ffeff07a8441?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:49,763 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8sm4-fa58jx-4bo', 'x-amz-id-2': 'mg0l8sm4-fa58jx-4bo', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:49,763 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/c35558dc-67a9-43d3-85d6-ffeff07a844168d650a1d73ec60008f933f2' gunicorn-registry stdout | 2025-09-26 08:36:49,763 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,763 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:49,763 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,763 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8sm4-fa58jx-4bo', 'HostId': 'mg0l8sm4-fa58jx-4bo', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8sm4-fa58jx-4bo', 'x-amz-id-2': 'mg0l8sm4-fa58jx-4bo', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/c35558dc-67a9-43d3-85d6-ffeff07a8441', 'UploadId': '68d650a1d73ec60008f933f2'} gunicorn-registry stdout | 2025-09-26 08:36:49,763 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:49,764 [251] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/c35558dc-67a9-43d3-85d6-ffeff07a8441', 'UploadId': '68d650a1d73ec60008f933f2'} gunicorn-registry stdout | 2025-09-26 08:36:49,764 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,764 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,764 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,764 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,764 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,764 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,764 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:49,764 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:49,764 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:49,764 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:49,764 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,764 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,765 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,765 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/c35558dc-67a9-43d3-85d6-ffeff07a8441', 'query_string': {'uploadId': '68d650a1d73ec60008f933f2'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/c35558dc-67a9-43d3-85d6-ffeff07a8441', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/c35558dc-67a9-43d3-85d6-ffeff07a8441?uploadId=68d650a1d73ec60008f933f2', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/c35558dc-67a9-43d3-85d6-ffeff07a8441', 'UploadId': '68d650a1d73ec60008f933f2'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:49,765 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,765 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,765 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,765 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,766 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:49,766 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/c35558dc-67a9-43d3-85d6-ffeff07a8441 gunicorn-registry stdout | uploadId=68d650a1d73ec60008f933f2 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083649Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:49,766 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083649Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | ec25fe321470331e08e4529d8675588cfdc81a4c0cd334cfc87663eb2b6dcf50 gunicorn-registry stdout | 2025-09-26 08:36:49,766 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | feea68e60db9e2ce3f4c39b66b677a386475f194a6f53d79f999fd1d01954bdf gunicorn-registry stdout | 2025-09-26 08:36:49,766 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,766 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:49,766 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:49,773 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/c35558dc-67a9-43d3-85d6-ffeff07a8441?uploadId=68d650a1d73ec60008f933f2 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:36:49,773 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8smf-fgemdt-d', 'x-amz-id-2': 'mg0l8smf-fgemdt-d', 'Date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:49,773 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:49,773 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,773 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:49,773 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,773 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8smf-fgemdt-d', 'HostId': 'mg0l8smf-fgemdt-d', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8smf-fgemdt-d', 'x-amz-id-2': 'mg0l8smf-fgemdt-d', 'date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:36:49,774 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 7989b191-5e8e-4ca1-89f3-a0b5afec6373 took 0.020912885665893555 seconds gunicorn-registry stdout | 2025-09-26 08:36:49,775 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['7989b191-5e8e-4ca1-89f3-a0b5afec6373', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,776 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, '7989b191-5e8e-4ca1-89f3-a0b5afec6373', 241, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwMzRlOTZjZTYxZTA0MTRkMmU1MGQxYzQ2OWQ2OGEyMGJjNzMyMzllYmNlNDgzIl19fTM5YzJjOTRlMzk1M2FlZDEAAAAAAAAAAAYAAAAAAADsob+bMuAgAGJ3yK1TcbIwgdyFuUvGgWhxTeKQypIvNZRiLg==', 9, '{"chunks": [["uploads/480fdebe-7391-414a-9acf-41586b04e8b3", 0, 241]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 36, 49, 546321), None, None, 26]) gunicorn-registry stdout | 2025-09-26 08:36:49,778 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:49,778 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:49,778 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:49,779 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:49,779 [251] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283'} gunicorn-registry stdout | 2025-09-26 08:36:49,779 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,779 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,779 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,779 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,779 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,779 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,780 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,780 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:49,780 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:49,780 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:49,780 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:49,780 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,780 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,780 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,780 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:49,780 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,780 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,780 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,780 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,781 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:49,781 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083649Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:49,781 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083649Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 004e9fae006a1498635465f2bcda2fbae638033f97763f781223e0fb48d3a282 gunicorn-registry stdout | 2025-09-26 08:36:49,781 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 8626d6731edbc24167a9772effe1885112b92768e197b4454faf18bac03f25e3 gunicorn-registry stdout | 2025-09-26 08:36:49,781 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,781 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:49,781 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:49,788 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:36:49,788 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8smv-fpw4jw-qmx', 'x-amz-id-2': 'mg0l8smv-fpw4jw-qmx', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:49,788 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:49,788 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,788 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:49,788 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,788 [251] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:36:49,788 [251] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:36:49,788 [251] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283 gunicorn-registry stdout | 2025-09-26 08:36:49,789 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:49,789 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:49,789 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:49,789 [251] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:36:49,789 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,789 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,790 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,790 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,790 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,790 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,790 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,790 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:49,790 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:49,790 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:49,790 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:49,791 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,791 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,791 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,791 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:49,791 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,791 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,791 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,791 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,791 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,791 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:49,791 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083649Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:49,791 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083649Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | b903782cd2809b52d5a8f8d3876fe2b2e177f38391929bb032c4e8c2974487c9 gunicorn-registry stdout | 2025-09-26 08:36:49,792 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | b1730a65adc5447da886e5c404bc470dd40e9242d72ebe631a7f58a6e6d44b8b gunicorn-registry stdout | 2025-09-26 08:36:49,792 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,792 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,792 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:49,792 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:49,797 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:49,797 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8sn5-fw75yo-wap', 'x-amz-id-2': 'mg0l8sn5-fw75yo-wap', 'ETag': '"ff5f07fe308df34f73245cf8878c3b21-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:49 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:49,797 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:49,798 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,798 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:49,798 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,798 [251] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:36:49,798 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:49,799 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:49,799 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:49,799 [251] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 'extra_args': {}, 'callbacks': [], 'size': 241} gunicorn-registry stdout | 2025-09-26 08:36:49,799 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,799 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,799 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,799 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,799 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,799 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,799 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,799 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,799 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,799 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,799 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:49,799 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:49,799 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:49,799 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:49,800 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,800 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,800 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,800 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:49,800 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,800 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,800 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,800 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,800 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,800 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:49,800 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/480fdebe-7391-414a-9acf-41586b04e8b3 gunicorn-registry stdout | x-amz-date:20250926T083649Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:49,800 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083649Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 58c00c65d8ce85b587bf53c7a1426d0e7f742619d14afb3170bf96b76cf1b776 gunicorn-registry stdout | 2025-09-26 08:36:49,801 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | f1e280966ec35bba610717c4e0517108d0ed29d2c1c334ca31a3b5a9e839d34e gunicorn-registry stdout | 2025-09-26 08:36:49,801 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,801 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,801 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:49,801 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:49,801 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:49,827 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:36:49,828 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8snf-g1myhn-gfm', 'x-amz-id-2': 'mg0l8snf-g1myhn-gfm', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:36:49 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:49,828 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:36:49.000Z"ff5f07fe308df34f73245cf8878c3b21-1"' gunicorn-registry stdout | 2025-09-26 08:36:49,828 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,828 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:49,828 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:49,828 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:49,829 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:49,829 [251] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 7989b191-5e8e-4ca1-89f3-a0b5afec6373 with digest sha256:5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283 took 0.04071688652038574 seconds gunicorn-registry stdout | 2025-09-26 08:36:49,830 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['7989b191-5e8e-4ca1-89f3-a0b5afec6373', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,832 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,833 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['28c17e26-fd25-43bc-b5e3-0eb584c45bc7', 241, None, True, True, 'sha256:5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283']) gunicorn-registry stdout | 2025-09-26 08:36:49,833 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [27, 9]) gunicorn-registry stdout | 2025-09-26 08:36:49,834 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:49,835 [251] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [2, 27, datetime.datetime(2025, 9, 26, 8, 36, 49, 835211), datetime.datetime(2025, 9, 26, 9, 36, 49, 835191)]) gunicorn-registry stdout | 2025-09-26 08:36:49,836 [251] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [26]) gunicorn-registry stdout | 2025-09-26 08:36:49,838 [251] [DEBUG] [app] Ending request: urn:request:b938785d-c98a-48ca-ab8b-129b372fc80c (/v2/testorg/alpine/blobs/uploads/7989b191-5e8e-4ca1-89f3-a0b5afec6373) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:b938785d-c98a-48ca-ab8b-129b372fc80c', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/7989b191-5e8e-4ca1-89f3-a0b5afec6373?digest=sha256:5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 'path': '/v2/testorg/alpine/blobs/uploads/7989b191-5e8e-4ca1-89f3-a0b5afec6373', 'parameters': {'digest': 'sha256:5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:49,838 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:49,838 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:49,838 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:49 +0000] "PUT /v2/testorg/alpine/blobs/uploads/7989b191-5e8e-4ca1-89f3-a0b5afec6373?digest=sha256%3A5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:49 +0000] "PUT /v2/testorg/alpine/blobs/uploads/7989b191-5e8e-4ca1-89f3-a0b5afec6373?digest=sha256%3A5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.098 1849 0.098) securityworker stdout | 2025-09-26 08:36:49,908 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "POST /indexer/api/v1/index_report HTTP/1.1" 201 None securityworker stdout | 2025-09-26 08:36:49,916 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) securityworker stdout | 2025-09-26 08:36:49,917 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) securityworker stdout | 2025-09-26 08:36:49,918 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:36:49,918 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/matcher/api/v1/vulnerability_report/sha256:a1c858aaff07c8da76e480d63c94e025c6317862dd2825c5ab2f4bf138a4c5dd securityworker stdout | 2025-09-26 08:36:50,005 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /matcher/api/v1/vulnerability_report/sha256:a1c858aaff07c8da76e480d63c94e025c6317862dd2825c5ab2f4bf138a4c5dd HTTP/1.1" 200 None gunicorn-web stdout | 2025-09-26 08:36:50,006 [247] [DEBUG] [app] Starting request: urn:request:42d0a258-7409-44a6-bb62-6f406673d0ea (/_storage_proxy_auth) {'X-Forwarded-For': '3.147.184.98'} gunicorn-web stdout | 2025-09-26 08:36:50,006 [247] [DEBUG] [storage.downloadproxy] Got token b'eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODA5LCJpYXQiOjE3NTg4NzU4MDksImV4cCI6MTc1ODg3NjQwOSwic3ViIjoic3RvcmFnZXByb3h5IiwiYWNjZXNzIjpbeyJ0eXBlIjoic3RvcmFnZXByb3h5IiwidXJpIjoicXVheS1kYXRhc3RvcmUtZTI5YzM5OTQtNjJlYi00ZTlmLTk1NTAtYmFhMTFmODc0MDg0L2RhdGFzdG9yYWdlL3JlZ2lzdHJ5L3NoYTI1Ni82MS82MTEwMTQ5NTVlNzM0ZWU0YjZkZjJkNzBlNTBlYTVlZjk3OWZkMzJkNmRhODBiZDRmMWMyOWE0MmEzOWRkNzM1P0FXU0FjY2Vzc0tleUlkPUtxVUFodjYwQUdsQUREcTBNY0taJlNpZ25hdHVyZT10bVVVYXFuT0E4SksycXEwS21PQmcxRTd3a00lM0QmRXhwaXJlcz0xNzU4ODc2NDA5IiwiaG9zdCI6InMzLm9wZW5zaGlmdC1zdG9yYWdlLnN2Yy5jbHVzdGVyLmxvY2FsOjQ0MyIsInNjaGVtZSI6Imh0dHBzIn1dLCJjb250ZXh0Ijp7fX0.Z4M7_0cRGBGPm3O_YLHarO2vAsqBL6R_4pMi6LJjb5VEz3SGvrp5dfp3HsbmOeQqUWxnApM_jiQTI7E8mto6hgzp6fvXaTlJ-QcO8pUOTaWab3vBh4-W7to4-W1lJoOBk4bRS2qEJ_602kOvhdliZB9tWULP9QEp8ChxK5JaVX-RZ6HJ5mf8mmUDrgklW1fPy57uvknbZLE44EzHD2fiBKUgEa7HOTHGgBWPNnvHMEZ1LuYk1zQzzjvFoCFolCs_uff0adX4Php-l_gsjaSKoRva9fdu8SUabpbNyw_9g7CVN52FnVVanBb943WsG39o05EQfvGafjV6pA4sl32psA' for storage proxy auth request /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQTVMQ0pwWVhRaU9qRTNOVGc0TnpVNE1Ea3NJbVY0Y0NJNk1UYzFPRGczTmpRd09Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4Mk1TODJNVEV3TVRRNU5UVmxOek0wWldVMFlqWmtaakprTnpCbE5UQmxZVFZsWmprM09XWmtNekprTm1SaE9EQmlaRFJtTVdNeU9XRTBNbUV6T1dSa056TTFQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDEwYlZWVllYRnVUMEU0U2tzeWNYRXdTMjFQUW1jeFJUZDNhMDBsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRBNUlpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuWjRNN18wY1JHQkdQbTNPX1lMSGFyTzJ2QXNxQkw2Ul80cE1pNkxKamI1VkV6M1NHdnJwNWRmcDNIc2JtT2VRcVVXeG5BcE1famlRVEk3RThtdG82aGd6cDZmdlhhVGxKLVFjTzhwVU9UYVdhYjN2Qmg0LVc3dG80LVcxbEpvT0JrNGJSUzJxRUpfNjAya092aGRsaVpCOXRXVUxQOVFFcDhDaHhLNUphVlgtUlo2SEo1bWY4bW1VRHJna2xXMWZQeTU3dXZrbmJaTEU0NEV6SEQyZmlCS1VnRWE3SE9USEdnQldQTm52SE1FWjFMdVlrMXpRenpqdkZvQ0ZvbENzX3VmZjBhZFg0UGhwLWxfZ3NqYVNLb1J2YTlmZHU4U1VhYnBiTnl3XzlnN0NWTjUyRm5WVmFuQmI5NDNXc0czOW8wNUVRZnZHYWZqVjZwQTRzbDMycHNB/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/61/611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=tmUUaqnOA8JK2qq0KmOBg1E7wkM%3D&Expires=1758876409 with parts ['ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQTVMQ0pwWVhRaU9qRTNOVGc0TnpVNE1Ea3NJbVY0Y0NJNk1UYzFPRGczTmpRd09Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4Mk1TODJNVEV3TVRRNU5UVmxOek0wWldVMFlqWmtaakprTnpCbE5UQmxZVFZsWmprM09XWmtNekprTm1SaE9EQmlaRFJtTVdNeU9XRTBNbUV6T1dSa056TTFQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDEwYlZWVllYRnVUMEU0U2tzeWNYRXdTMjFQUW1jeFJUZDNhMDBsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRBNUlpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuWjRNN18wY1JHQkdQbTNPX1lMSGFyTzJ2QXNxQkw2Ul80cE1pNkxKamI1VkV6M1NHdnJwNWRmcDNIc2JtT2VRcVVXeG5BcE1famlRVEk3RThtdG82aGd6cDZmdlhhVGxKLVFjTzhwVU9UYVdhYjN2Qmg0LVc3dG80LVcxbEpvT0JrNGJSUzJxRUpfNjAya092aGRsaVpCOXRXVUxQOVFFcDhDaHhLNUphVlgtUlo2SEo1bWY4bW1VRHJna2xXMWZQeTU3dXZrbmJaTEU0NEV6SEQyZmlCS1VnRWE3SE9USEdnQldQTm52SE1FWjFMdVlrMXpRenpqdkZvQ0ZvbENzX3VmZjBhZFg0UGhwLWxfZ3NqYVNLb1J2YTlmZHU4U1VhYnBiTnl3XzlnN0NWTjUyRm5WVmFuQmI5NDNXc0czOW8wNUVRZnZHYWZqVjZwQTRzbDMycHNB', 'https', 's3.openshift-storage.svc.cluster.local:443', 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/61/611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=tmUUaqnOA8JK2qq0KmOBg1E7wkM%3D&Expires=1758876409'] securityworker stdout | 2025-09-26 08:36:50,008 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Attempting to create notifications for manifest #4 gunicorn-web stdout | 2025-09-26 08:36:50,008 [247] [DEBUG] [app] Ending request: urn:request:42d0a258-7409-44a6-bb62-6f406673d0ea (/_storage_proxy_auth) {'endpoint': '_storage_proxy_auth', 'request_id': 'urn:request:42d0a258-7409-44a6-bb62-6f406673d0ea', 'remote_addr': '3.147.184.98', 'http_method': 'GET', 'original_url': 'https://web_app_server/_storage_proxy_auth', 'path': '/_storage_proxy_auth', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'Go-http-client/1.1'} securityworker stdout | 2025-09-26 08:36:50,008 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE ("manifestsecuritystatus"."manifest_id" = %s)', [4]) gunicorn-web stdout | 2025-09-26 08:36:50,009 [247] [INFO] [gunicorn.access] 3.147.184.98 - - [26/Sep/2025:08:36:50 +0000] "GET /_storage_proxy_auth HTTP/1.0" 200 2 "-" "Go-http-client/1.1" securityworker stdout | 2025-09-26 08:36:50,009 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [4, 2, 2, '""', datetime.datetime(2025, 9, 26, 8, 36, 50, 9248), '37b46b4a70b6f1a19d5e4e18d21f57ff', 4, '{}']) securityworker stdout | 2025-09-26 08:36:50,013 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [5, 1, 0]) securityworker stdout | 2025-09-26 08:36:50,015 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 1, 0]) securityworker stdout | 2025-09-26 08:36:50,016 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['5fa09ad8-4d79-43e5-afae-741bb0754a48']) securityworker stdout | 2025-09-26 08:36:50,016 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:36:50,017 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:36:50,017 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9'} securityworker stdout | 2025-09-26 08:36:50,017 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,017 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,017 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,017 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:50,017 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,017 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:50,018 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:50,018 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:50,018 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:50,018 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:50,018 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:50,018 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,018 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,018 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,018 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:36:50,018 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:50,018 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:50,018 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,018 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,019 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:36:50,019 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9 securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083650Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:36:50,019 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083650Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | f4d69d82108b0503fe5409158e629da1073cae09f8489cc2615fdb67717bc6a0 securityworker stdout | 2025-09-26 08:36:50,019 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | 03df2421d4ff160de52ba29c31bbc675dc882c629a4c6398370840bfb5ec1641 securityworker stdout | 2025-09-26 08:36:50,019 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,019 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:36:50,019 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:36:50,036 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9 HTTP/1.1" 200 167 securityworker stdout | 2025-09-26 08:36:50,037 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8stg-33slly-cte', 'x-amz-id-2': 'mg0l8stg-33slly-cte', 'ETag': '"a9818db4e7d1861b8e5bdda91b9febaf-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:41 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '167', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:50 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:36:50,037 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:36:50,038 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,038 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:36:50,038 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:50,038 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8stg-33slly-cte', 'HostId': 'mg0l8stg-33slly-cte', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8stg-33slly-cte', 'x-amz-id-2': 'mg0l8stg-33slly-cte', 'etag': '"a9818db4e7d1861b8e5bdda91b9febaf-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:41 GMT', 'content-type': 'application/octet-stream', 'content-length': '167', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:36:50 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 41, tzinfo=tzutc()), 'ContentLength': 167, 'ETag': '"a9818db4e7d1861b8e5bdda91b9febaf-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } securityworker stdout | 2025-09-26 08:36:50,040 [86] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL (SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1")', [2, 'sha256:611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735', 1, 2, 'sha256:54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 1]) securityworker stdout | 2025-09-26 08:36:50,041 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['ba789f5f-da42-4591-8b41-6bdd6e1a39be']) securityworker stdout | 2025-09-26 08:36:50,042 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s)', [5]) securityworker stdout | 2025-09-26 08:36:50,044 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) securityworker stdout | 2025-09-26 08:36:50,045 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:36:50,045 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Indexing manifest [5] 3/alpine@sha256:1475ea648c2027063f90bc98072ee2197ceec56e17de472f7f9777b8944e9c38 securityworker stdout | 2025-09-26 08:36:50,046 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,046 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,046 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,046 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:50,046 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,046 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:50,046 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:50,046 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:50,046 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:50,046 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:50,046 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:50,046 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:50,046 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,046 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:50,046 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:50,046 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876410 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/61/611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735 securityworker stdout | 2025-09-26 08:36:50,052 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ERXdMQ0pwWVhRaU9qRTNOVGc0TnpVNE1UQXNJbVY0Y0NJNk1UYzFPRGczTmpReE1Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4Mk1TODJNVEV3TVRRNU5UVmxOek0wWldVMFlqWmtaakprTnpCbE5UQmxZVFZsWmprM09XWmtNekprTm1SaE9EQmlaRFJtTVdNeU9XRTBNbUV6T1dSa056TTFQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFtYVVGdVJqZGlUMGxNT0RaV2IxaDVVMHRPTWtWRFkwVTRiSGNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRFd0lpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuQnVlcUdMUHMyb0FBV09jVFNqbjVUOGxjMzZ5eng5LTVIRGNEWHczQmRieDZNTFI0YjZ4LWpIWi1tMGhNclA1dXZTWVV5MENDRWQxYkgtRmZIT1VHWVVIejZEYzhNU0FyQjFsLWdYbnlQODJ5emJla3htaFhlZ29TWmpkS2I3YTlTbnhyRHM3djdrblU2OG1QbTllTmhDbXYxTWdVM1I2dGpnSHhNaVRDR0pQbUJ5T19xbG93WURkbVEwWkYzc0pNa1JhVmI2TUl3a0RQQ2s4dk1LU3Z3YTYwUEZKSlpBbzRuTGJhRlQ1MEpMWEtyLXY0T3ZkcDc2eG1qeUwxSGpxcjl5cWZTNW9DZXoyZlk0V1JwRS1yZklNYjFxY2pPTEowWkhlRERhcGo2YU1acHF2cEY0UGNsZkZ4dGNHNGwzTTIyVG8yeWNrZ29INUhPbjFYXzdwUmdB/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/61/611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=fiAnF7bOIL86VoXySKN2ECcE8lw%3D&Expires=1758876410 securityworker stdout | 2025-09-26 08:36:50,052 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,052 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,052 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,052 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:50,052 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,052 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:36:50,052 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:36:50,052 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:36:50,052 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:36:50,052 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:36:50,052 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:36:50,052 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:36:50,052 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:36:50,052 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:36:50,052 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:36:50,052 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876410 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/61/611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735 securityworker stdout | 2025-09-26 08:36:50,058 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ERXdMQ0pwWVhRaU9qRTNOVGc0TnpVNE1UQXNJbVY0Y0NJNk1UYzFPRGczTmpReE1Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4Mk1TODJNVEV3TVRRNU5UVmxOek0wWldVMFlqWmtaakprTnpCbE5UQmxZVFZsWmprM09XWmtNekprTm1SaE9EQmlaRFJtTVdNeU9XRTBNbUV6T1dSa056TTFQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFtYVVGdVJqZGlUMGxNT0RaV2IxaDVVMHRPTWtWRFkwVTRiSGNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRFd0lpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuQnVlcUdMUHMyb0FBV09jVFNqbjVUOGxjMzZ5eng5LTVIRGNEWHczQmRieDZNTFI0YjZ4LWpIWi1tMGhNclA1dXZTWVV5MENDRWQxYkgtRmZIT1VHWVVIejZEYzhNU0FyQjFsLWdYbnlQODJ5emJla3htaFhlZ29TWmpkS2I3YTlTbnhyRHM3djdrblU2OG1QbTllTmhDbXYxTWdVM1I2dGpnSHhNaVRDR0pQbUJ5T19xbG93WURkbVEwWkYzc0pNa1JhVmI2TUl3a0RQQ2s4dk1LU3Z3YTYwUEZKSlpBbzRuTGJhRlQ1MEpMWEtyLXY0T3ZkcDc2eG1qeUwxSGpxcjl5cWZTNW9DZXoyZlk0V1JwRS1yZklNYjFxY2pPTEowWkhlRERhcGo2YU1acHF2cEY0UGNsZkZ4dGNHNGwzTTIyVG8yeWNrZ29INUhPbjFYXzdwUmdB/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/61/611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=fiAnF7bOIL86VoXySKN2ECcE8lw%3D&Expires=1758876410 securityworker stdout | 2025-09-26 08:36:50,058 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:36:50,058 [86] [DEBUG] [util.secscan.v4.api] POSTing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_report nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:50 +0000] "GET /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EQTVMQ0pwWVhRaU9qRTNOVGc0TnpVNE1Ea3NJbVY0Y0NJNk1UYzFPRGczTmpRd09Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4Mk1TODJNVEV3TVRRNU5UVmxOek0wWldVMFlqWmtaakprTnpCbE5UQmxZVFZsWmprM09XWmtNekprTm1SaE9EQmlaRFJtTVdNeU9XRTBNbUV6T1dSa056TTFQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDEwYlZWVllYRnVUMEU0U2tzeWNYRXdTMjFQUW1jeFJUZDNhMDBsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRBNUlpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuWjRNN18wY1JHQkdQbTNPX1lMSGFyTzJ2QXNxQkw2Ul80cE1pNkxKamI1VkV6M1NHdnJwNWRmcDNIc2JtT2VRcVVXeG5BcE1famlRVEk3RThtdG82aGd6cDZmdlhhVGxKLVFjTzhwVU9UYVdhYjN2Qmg0LVc3dG80LVcxbEpvT0JrNGJSUzJxRUpfNjAya092aGRsaVpCOXRXVUxQOVFFcDhDaHhLNUphVlgtUlo2SEo1bWY4bW1VRHJna2xXMWZQeTU3dXZrbmJaTEU0NEV6SEQyZmlCS1VnRWE3SE9USEdnQldQTm52SE1FWjFMdVlrMXpRenpqdkZvQ0ZvbENzX3VmZjBhZFg0UGhwLWxfZ3NqYVNLb1J2YTlmZHU4U1VhYnBiTnl3XzlnN0NWTjUyRm5WVmFuQmI5NDNXc0czOW8wNUVRZnZHYWZqVjZwQTRzbDMycHNB/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/61/611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=tmUUaqnOA8JK2qq0KmOBg1E7wkM%3D&Expires=1758876409 HTTP/1.1" 200 1823 "-" "Go-http-client/1.1" (0.082 2403 0.077) gunicorn-registry stdout | 2025-09-26 08:36:50,209 [251] [DEBUG] [app] Starting request: urn:request:40b267e6-9131-4203-823d-3cea268472ea (/v2/testorg/alpine/blobs/sha256:c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:50,209 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:50,209 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:50,209 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:50,210 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:50,210 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:50,210 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:50,210 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:50,210 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:50,211 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:50,212 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:50,213 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:50,214 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993_2 gunicorn-registry stdout | 2025-09-26 08:36:50,214 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:50,215 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:50,216 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:50,218 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:50,219 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:50,220 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:50,221 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993_2: None gunicorn-registry stdout | 2025-09-26 08:36:50,221 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993_2: None gunicorn-registry stdout | 2025-09-26 08:36:50,221 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:50,222 [251] [DEBUG] [app] Ending request: urn:request:40b267e6-9131-4203-823d-3cea268472ea (/v2/testorg/alpine/blobs/sha256:c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:40b267e6-9131-4203-823d-3cea268472ea', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993', 'path': '/v2/testorg/alpine/blobs/sha256:c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:50,222 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:50,222 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:50,222 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:50 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:50 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.015 1714 0.015) gunicorn-registry stdout | 2025-09-26 08:36:50,548 [251] [DEBUG] [app] Starting request: urn:request:b33c49d9-dede-4cc7-8653-692209243f20 (/v2/testorg/alpine/blobs/uploads/ea35af57-5501-4442-a095-14d081c13898) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:50,548 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'ea35af57-5501-4442-a095-14d081c13898', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:50,548 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:50,548 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:50,550 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:50,550 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:50,550 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:50,550 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:50,550 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:50,551 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:50,552 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:50,553 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:50,554 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:50,555 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:50,556 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:50,557 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:50,558 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:50,560 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['ea35af57-5501-4442-a095-14d081c13898', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:50,560 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:50,561 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:50,561 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:50,562 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:50,562 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:50,562 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,562 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,562 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,563 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,563 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:50,563 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,563 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,563 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:50,563 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:50,563 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:50,563 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:50,563 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:50,563 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,563 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,563 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,564 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:50,564 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:50,564 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:50,564 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,564 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,564 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:50,564 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083650Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:50,564 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083650Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | e0b11e316dc9d42efa42aeeef70db46ffb8040b54034a1e0079a51b419c33497 gunicorn-registry stdout | 2025-09-26 08:36:50,564 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 0b1717434a16924af2c3be56e015d523fd22cd9fd366a69663be5ade24282f3a gunicorn-registry stdout | 2025-09-26 08:36:50,565 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,565 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:50,565 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:50,572 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:50,573 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8t8n-c5comc-qj3', 'x-amz-id-2': 'mg0l8t8n-c5comc-qj3', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:50 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:50,573 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a03368d650a2d73ec60008f933f5' gunicorn-registry stdout | 2025-09-26 08:36:50,573 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,573 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:50,573 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:50,573 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8t8n-c5comc-qj3', 'HostId': 'mg0l8t8n-c5comc-qj3', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8t8n-c5comc-qj3', 'x-amz-id-2': 'mg0l8t8n-c5comc-qj3', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:50 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033', 'UploadId': '68d650a2d73ec60008f933f5'} gunicorn-registry stdout | 2025-09-26 08:36:50,573 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-web stdout | 2025-09-26 08:36:50,686 [247] [DEBUG] [app] Starting request: urn:request:82ffb704-967d-47ba-ac93-deaa194ee4d1 (/_storage_proxy_auth) {'X-Forwarded-For': '3.147.184.98'} gunicorn-web stdout | 2025-09-26 08:36:50,686 [247] [DEBUG] [storage.downloadproxy] Got token b'eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODEwLCJpYXQiOjE3NTg4NzU4MTAsImV4cCI6MTc1ODg3NjQxMCwic3ViIjoic3RvcmFnZXByb3h5IiwiYWNjZXNzIjpbeyJ0eXBlIjoic3RvcmFnZXByb3h5IiwidXJpIjoicXVheS1kYXRhc3RvcmUtZTI5YzM5OTQtNjJlYi00ZTlmLTk1NTAtYmFhMTFmODc0MDg0L2RhdGFzdG9yYWdlL3JlZ2lzdHJ5L3NoYTI1Ni8yMi8yMmU0ZDE3MDI5Y2Y2NDdmZjUwNWQ1Mzg5YmU5MDAwNmVmYzVlZDQxNzhhZWQ5YTZkNzk4YTJiZjdhNjc1ZmM5P0FXU0FjY2Vzc0tleUlkPUtxVUFodjYwQUdsQUREcTBNY0taJlNpZ25hdHVyZT1WdU5uZDRWV0NrWVc0QzQlMkJJalR5eGJqVjJjSSUzRCZFeHBpcmVzPTE3NTg4NzY0MTAiLCJob3N0IjoiczMub3BlbnNoaWZ0LXN0b3JhZ2Uuc3ZjLmNsdXN0ZXIubG9jYWw6NDQzIiwic2NoZW1lIjoiaHR0cHMifV0sImNvbnRleHQiOnt9fQ.JS8wUtp62NbF4mjko1RNwlDtwhXwrfrV2vvIkYsPpbzsluVx1mk7YiufaEfbXPZ__82h3rEaVXwLcPa9FSQYzKr_Qc-QeogG6QZKriIfci2YjWVzLArWn7LJn5asglN8Mim8uRxUW57eKNlpjEqQo87bufbQS0FaCIlNBw6bZprIJPXXpPk4GxNKAtNAp_6ymh0IQtEwdqZL3tRhDAVnCS1HBLZMZNxn892HKAUnkDimY9zCIDHflyIGeJQeY3A6vWxJ-3tSso3mJh3u7yjKbrcCjEcF2W0rnXwsgTFHceYgOTCP02EeKlMH7L9JbbSOx4TDDoVKekx8hmCK0eoODw' for storage proxy auth request /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ERXdMQ0pwWVhRaU9qRTNOVGc0TnpVNE1UQXNJbVY0Y0NJNk1UYzFPRGczTmpReE1Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4eU1pOHlNbVUwWkRFM01ESTVZMlkyTkRkbVpqVXdOV1ExTXpnNVltVTVNREF3Tm1WbVl6VmxaRFF4TnpoaFpXUTVZVFprTnprNFlUSmlaamRoTmpjMVptTTVQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFXZFU1dVpEUldWME5yV1ZjMFF6UWxNa0pKYWxSNWVHSnFWakpqU1NVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1UQWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlM4d1V0cDYyTmJGNG1qa28xUk53bER0d2hYd3JmclYydnZJa1lzUHBienNsdVZ4MW1rN1lpdWZhRWZiWFBaX184MmgzckVhVlh3TGNQYTlGU1FZektyX1FjLVFlb2dHNlFaS3JpSWZjaTJZaldWekxBclduN0xKbjVhc2dsTjhNaW04dVJ4VVc1N2VLTmxwakVxUW84N2J1ZmJRUzBGYUNJbE5CdzZiWnBySUpQWFhwUGs0R3hOS0F0TkFwXzZ5bWgwSVF0RXdkcVpMM3RSaERBVm5DUzFIQkxaTVpOeG44OTJIS0FVbmtEaW1ZOXpDSURIZmx5SUdlSlFlWTNBNnZXeEotM3RTc28zbUpoM3U3eWpLYnJjQ2pFY0YyVzByblh3c2dURkhjZVlnT1RDUDAyRWVLbE1IN0w5SmJiU094NFRERG9WS2VreDhobUNLMGVvT0R3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/22/22e4d17029cf647ff505d5389be90006efc5ed4178aed9a6d798a2bf7a675fc9?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=VuNnd4VWCkYW4C4%2BIjTyxbjV2cI%3D&Expires=1758876410 with parts ['ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ERXdMQ0pwWVhRaU9qRTNOVGc0TnpVNE1UQXNJbVY0Y0NJNk1UYzFPRGczTmpReE1Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4eU1pOHlNbVUwWkRFM01ESTVZMlkyTkRkbVpqVXdOV1ExTXpnNVltVTVNREF3Tm1WbVl6VmxaRFF4TnpoaFpXUTVZVFprTnprNFlUSmlaamRoTmpjMVptTTVQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFXZFU1dVpEUldWME5yV1ZjMFF6UWxNa0pKYWxSNWVHSnFWakpqU1NVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1UQWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlM4d1V0cDYyTmJGNG1qa28xUk53bER0d2hYd3JmclYydnZJa1lzUHBienNsdVZ4MW1rN1lpdWZhRWZiWFBaX184MmgzckVhVlh3TGNQYTlGU1FZektyX1FjLVFlb2dHNlFaS3JpSWZjaTJZaldWekxBclduN0xKbjVhc2dsTjhNaW04dVJ4VVc1N2VLTmxwakVxUW84N2J1ZmJRUzBGYUNJbE5CdzZiWnBySUpQWFhwUGs0R3hOS0F0TkFwXzZ5bWgwSVF0RXdkcVpMM3RSaERBVm5DUzFIQkxaTVpOeG44OTJIS0FVbmtEaW1ZOXpDSURIZmx5SUdlSlFlWTNBNnZXeEotM3RTc28zbUpoM3U3eWpLYnJjQ2pFY0YyVzByblh3c2dURkhjZVlnT1RDUDAyRWVLbE1IN0w5SmJiU094NFRERG9WS2VreDhobUNLMGVvT0R3', 'https', 's3.openshift-storage.svc.cluster.local:443', 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/22/22e4d17029cf647ff505d5389be90006efc5ed4178aed9a6d798a2bf7a675fc9?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=VuNnd4VWCkYW4C4%2BIjTyxbjV2cI%3D&Expires=1758876410'] gunicorn-web stdout | 2025-09-26 08:36:50,688 [247] [DEBUG] [app] Ending request: urn:request:82ffb704-967d-47ba-ac93-deaa194ee4d1 (/_storage_proxy_auth) {'endpoint': '_storage_proxy_auth', 'request_id': 'urn:request:82ffb704-967d-47ba-ac93-deaa194ee4d1', 'remote_addr': '3.147.184.98', 'http_method': 'GET', 'original_url': 'https://web_app_server/_storage_proxy_auth', 'path': '/_storage_proxy_auth', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'Go-http-client/1.1'} gunicorn-web stdout | 2025-09-26 08:36:50,688 [247] [INFO] [gunicorn.access] 3.147.184.98 - - [26/Sep/2025:08:36:50 +0000] "GET /_storage_proxy_auth HTTP/1.0" 200 2 "-" "Go-http-client/1.1" notificationworker stdout | 2025-09-26 08:36:50,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:36:50,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:00.692901+00:00 (in 9.999584 seconds) notificationworker stdout | 2025-09-26 08:36:50,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:00 GMT)" (scheduled at 2025-09-26 08:36:50.692901+00:00) notificationworker stdout | 2025-09-26 08:36:50,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:36:50,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 36, 50, 693673), True, datetime.datetime(2025, 9, 26, 8, 36, 50, 693673), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:36:50,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:36:50,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:36:50,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:00 GMT)" executed successfully securityworker stdout | 2025-09-26 08:36:50,739 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "POST /indexer/api/v1/index_report HTTP/1.1" 400 None securityworker stdout | 2025-09-26 08:36:50,739 [86] [ERROR] [util.secscan.v4.api] Security scanner endpoint responded with 400 HTTP status code: {"code":"bad-request","message":"failed to start scan: failed to fetch layers: fetcher: encountered errors: claircore: layer sha256:611014955e734ee4b6df2d70e50ea5ef979fd32d6da80bd4f1c29a42a39dd735: unable to create fs.FS: tarfs: error finding segments: bad block at 0: got magic \"\\\"name\\\"\""} securityworker stdout | NoneType: None securityworker stdout | 2025-09-26 08:36:50,740 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE (("manifestsecuritystatus"."manifest_id" = %s) AND ("manifestsecuritystatus"."repository_id" = %s))', [5, 2]) securityworker stdout | 2025-09-26 08:36:50,741 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [5, 2, -2, '{}', datetime.datetime(2025, 9, 26, 8, 36, 50, 740961), 'none', 4, '{}']) securityworker stdout | 2025-09-26 08:36:50,743 [86] [ERROR] [data.secscan_model.secscan_v4_model] Failed to perform indexing, invalid content sent securityworker stdout | Traceback (most recent call last): securityworker stdout | File "/quay-registry/util/secscan/v4/api.py", line 257, in index securityworker stdout | resp = self._perform(actions["Index"](body)) securityworker stdout | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ securityworker stdout | File "/quay-registry/util/secscan/v4/api.py", line 362, in _perform securityworker stdout | raise BadRequestResponseException(resp) securityworker stdout | util.secscan.v4.api.BadRequestResponseException securityworker stdout | During handling of the above exception, another exception occurred: securityworker stdout | Traceback (most recent call last): securityworker stdout | File "/quay-registry/data/secscan_model/secscan_v4_model.py", line 419, in _index securityworker stdout | (report, state) = self._secscan_api.index(manifest, layers) securityworker stdout | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ securityworker stdout | File "/quay-registry/util/secscan/v4/api.py", line 259, in index securityworker stdout | raise InvalidContentSent(ex) securityworker stdout | util.secscan.v4.api.InvalidContentSent securityworker stdout | 2025-09-26 08:36:50,744 [86] [DEBUG] [util.migrate.allocator] Marking id range as completed: 1-6 by worker securityworker stdout | 2025-09-26 08:36:50,744 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-6 securityworker stdout | 2025-09-26 08:36:50,744 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:36:50,744 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 6 securityworker stdout | 2025-09-26 08:36:50,744 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Marking id range as completed: 1-6 by worker securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-6 securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 6 securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Total range: 6-1 securityworker stdout | 2025-09-26 08:36:50,744 [86] [DEBUG] [util.migrate.allocator] Total range: 6-1 securityworker stdout | 2025-09-26 08:36:50,744 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:36:50,744 [86] [DEBUG] [util.migrate.allocator] Total range: 1-6 securityworker stdout | 2025-09-26 08:36:50,744 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:36:50,744 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-6 securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Total range: 1-6 securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-6 securityworker stdout | 2025-09-26 08:36:50,744 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:36:50,745 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 31, 41, 698813), 1, 6]) securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-6 by worker securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-6 securityworker stdout | 2025-09-26 08:36:50,746 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-6 by worker securityworker stdout | 2025-09-26 08:36:50,746 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-6 securityworker stdout | 2025-09-26 08:36:50,746 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:36:50,746 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 6 securityworker stdout | 2025-09-26 08:36:50,746 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:36:50,746 [86] [DEBUG] [util.migrate.allocator] Total range: 6-1 securityworker stdout | 2025-09-26 08:36:50,746 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:36:50,746 [86] [DEBUG] [util.migrate.allocator] Total range: 1-6 securityworker stdout | 2025-09-26 08:36:50,746 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 6 securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Total range: 6-1 securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Total range: 1-6 securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-6 securityworker stdout | 2025-09-26 08:36:50,746 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-6 securityworker stdout | 2025-09-26 08:36:50,746 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:36:50,747 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 31, 41, 698813), 1, 6]) securityworker stdout | 2025-09-26 08:36:50,748 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-6 by worker securityworker stdout | 2025-09-26 08:36:50,748 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-6 securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-6 by worker securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-6 securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:36:50,748 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:36:50,748 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 6 securityworker stdout | 2025-09-26 08:36:50,748 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:36:50,748 [86] [DEBUG] [util.migrate.allocator] Total range: 6-1 securityworker stdout | 2025-09-26 08:36:50,748 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 6 securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] Total range: 6-1 securityworker stderr | 2025-09-26 08:36:50 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:36:50,748 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:36:50,748 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:11 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:36:50,885 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:36:50,886 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:36:52.886914+00:00 (in 2.000824 seconds) exportactionlogsworker stdout | 2025-09-26 08:36:50,886 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:50 GMT)" (scheduled at 2025-09-26 08:36:50.885619+00:00) exportactionlogsworker stdout | 2025-09-26 08:36:50,886 [56] [DEBUG] [workers.queueworker] Getting work item from queue. exportactionlogsworker stdout | 2025-09-26 08:36:50,887 [56] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 36, 50, 886393), True, datetime.datetime(2025, 9, 26, 8, 36, 50, 886393), 0, 'exportactionlogs/%', 50, 1, 0]) exportactionlogsworker stdout | 2025-09-26 08:36:50,893 [56] [DEBUG] [workers.queueworker] No more work. exportactionlogsworker stdout | 2025-09-26 08:36:50,893 [56] [DEBUG] [data.database] Disconnecting from database. exportactionlogsworker stdout | 2025-09-26 08:36:50,893 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:50 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:36:50,894 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:36:50,895 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:36:50,895 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033', 'UploadId': '68d650a2d73ec60008f933f5', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b897f7e0>, 'ContentLength': 3616029} gunicorn-registry stdout | 2025-09-26 08:36:50,895 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,895 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,896 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,896 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,896 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:50,896 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,896 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,896 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:50,896 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:50,896 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:50,896 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:50,896 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:50,896 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,904 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,904 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:36:50,904 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,904 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,904 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033', 'query_string': {'uploadId': '68d650a2d73ec60008f933f5', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '3616029', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'nCHrtYvnu92oY+7KsYQ6Cg==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b897f7e0>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033?uploadId=68d650a2d73ec60008f933f5&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033', 'UploadId': '68d650a2d73ec60008f933f5', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b897f7e0>, 'ContentLength': 3616029}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:50,904 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:50,904 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:50,904 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,904 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,905 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:50,905 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033 gunicorn-registry stdout | partNumber=1&uploadId=68d650a2d73ec60008f933f5 gunicorn-registry stdout | content-length:3616029 gunicorn-registry stdout | content-md5:nCHrtYvnu92oY+7KsYQ6Cg== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083650Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:50,905 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083650Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 21b30d0b2eec691f470038d88a242adb56b98b118b1c56813733e9a11990a468 gunicorn-registry stdout | 2025-09-26 08:36:50,905 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | bb38572a0d44a469b54e26c8c5a03341bfbba67452ba990300ba1451cf86b5c7 gunicorn-registry stdout | 2025-09-26 08:36:50,905 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:50,905 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:50,905 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:50,906 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:50,908 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:50 +0000] "GET /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ERXdMQ0pwWVhRaU9qRTNOVGc0TnpVNE1UQXNJbVY0Y0NJNk1UYzFPRGczTmpReE1Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4eU1pOHlNbVUwWkRFM01ESTVZMlkyTkRkbVpqVXdOV1ExTXpnNVltVTVNREF3Tm1WbVl6VmxaRFF4TnpoaFpXUTVZVFprTnprNFlUSmlaamRoTmpjMVptTTVQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFXZFU1dVpEUldWME5yV1ZjMFF6UWxNa0pKYWxSNWVHSnFWakpqU1NVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1UQWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSlM4d1V0cDYyTmJGNG1qa28xUk53bER0d2hYd3JmclYydnZJa1lzUHBienNsdVZ4MW1rN1lpdWZhRWZiWFBaX184MmgzckVhVlh3TGNQYTlGU1FZektyX1FjLVFlb2dHNlFaS3JpSWZjaTJZaldWekxBclduN0xKbjVhc2dsTjhNaW04dVJ4VVc1N2VLTmxwakVxUW84N2J1ZmJRUzBGYUNJbE5CdzZiWnBySUpQWFhwUGs0R3hOS0F0TkFwXzZ5bWgwSVF0RXdkcVpMM3RSaERBVm5DUzFIQkxaTVpOeG44OTJIS0FVbmtEaW1ZOXpDSURIZmx5SUdlSlFlWTNBNnZXeEotM3RTc28zbUpoM3U3eWpLYnJjQ2pFY0YyVzByblh3c2dURkhjZVlnT1RDUDAyRWVLbE1IN0w5SmJiU094NFRERG9WS2VreDhobUNLMGVvT0R3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/22/22e4d17029cf647ff505d5389be90006efc5ed4178aed9a6d798a2bf7a675fc9?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=VuNnd4VWCkYW4C4%2BIjTyxbjV2cI%3D&Expires=1758876410 HTTP/1.1" 200 3198347 "-" "Go-http-client/1.1" (0.268 2409 0.265) gunicorn-registry stdout | 2025-09-26 08:36:51,153 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033?uploadId=68d650a2d73ec60008f933f5&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:51,153 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8ti3-18feiw-toe', 'x-amz-id-2': 'mg0l8ti3-18feiw-toe', 'ETag': '"9c21ebb58be7bbdda863eecab1843a0a"', 'Date': 'Fri, 26 Sep 2025 08:36:51 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:36:51,153 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:51,153 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,153 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:51,154 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,154 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8ti3-18feiw-toe', 'HostId': 'mg0l8ti3-18feiw-toe', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8ti3-18feiw-toe', 'x-amz-id-2': 'mg0l8ti3-18feiw-toe', 'etag': '"9c21ebb58be7bbdda863eecab1843a0a"', 'date': 'Fri, 26 Sep 2025 08:36:51 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"9c21ebb58be7bbdda863eecab1843a0a"'} gunicorn-registry stdout | 2025-09-26 08:36:51,154 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033', 'UploadId': '68d650a2d73ec60008f933f5', 'MultipartUpload': {'Parts': [{'ETag': '"9c21ebb58be7bbdda863eecab1843a0a"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:36:51,154 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,154 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,154 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,154 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,154 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,154 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,154 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,154 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:51,154 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:51,155 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:51,155 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:51,155 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,155 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,155 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,155 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033', 'query_string': {'uploadId': '68d650a2d73ec60008f933f5'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"9c21ebb58be7bbdda863eecab1843a0a"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033?uploadId=68d650a2d73ec60008f933f5', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033', 'UploadId': '68d650a2d73ec60008f933f5', 'MultipartUpload': {'Parts': [{'ETag': '"9c21ebb58be7bbdda863eecab1843a0a"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:51,155 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,155 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,155 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,155 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,156 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:51,156 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033 gunicorn-registry stdout | uploadId=68d650a2d73ec60008f933f5 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:89f70da979424507cbf2fed0616575451cf3c0621f83abfda4e2ed3f66545ba3 gunicorn-registry stdout | x-amz-date:20250926T083651Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 89f70da979424507cbf2fed0616575451cf3c0621f83abfda4e2ed3f66545ba3 gunicorn-registry stdout | 2025-09-26 08:36:51,156 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083651Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 49af95aa1afdb344e278cb2f4809385540b0e1f6d5c4df38b7453d4644b3c913 gunicorn-registry stdout | 2025-09-26 08:36:51,156 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 0a6fee6bd03d61356c015c579130831c85a6d9644ef0df0ee5d49d8284a5b5d1 gunicorn-registry stdout | 2025-09-26 08:36:51,156 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,156 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:51,157 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:51,173 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033?uploadId=68d650a2d73ec60008f933f5 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:36:51,173 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8tp2-5dwgi2-1bey', 'x-amz-id-2': 'mg0l8tp2-5dwgi2-1bey', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:36:51 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:51,173 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033"d972e2208679bf56cb345564cf1d854b-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033?uploadId=68d650a2d73ec60008f933f5' gunicorn-registry stdout | 2025-09-26 08:36:51,174 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,174 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,174 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:51,174 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,174 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8tp2-5dwgi2-1bey', 'HostId': 'mg0l8tp2-5dwgi2-1bey', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8tp2-5dwgi2-1bey', 'x-amz-id-2': 'mg0l8tp2-5dwgi2-1bey', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:36:51 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033?uploadId=68d650a2d73ec60008f933f5', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033', 'ETag': '"d972e2208679bf56cb345564cf1d854b-1"'} gunicorn-registry stdout | 2025-09-26 08:36:51,174 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:51,176 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:51,176 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 3616029 bytes to blob ea35af57-5501-4442-a095-14d081c13898 took 0.6154348850250244 seconds gunicorn-registry stdout | 2025-09-26 08:36:51,177 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['ea35af57-5501-4442-a095-14d081c13898', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,179 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'ea35af57-5501-4442-a095-14d081c13898', 3616029, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwh+Hff9b+/qeWWmqppd3SvwMAAP//5lbCxQAicACiSXejWot/hT/dBexmjYfjP7TvfxH+u9PKU4t/zyyKXZ//kx0AAAAAAAAAAGi5AQAAAAA7jWAaIGF3evZCmJztN1KLH+gtbGwc6k5NGNEPvsNJ4JRiLg==', 9, '{"chunks": [["uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033", 0, 3616029]]}', 1, 7348736, datetime.datetime(2025, 9, 26, 8, 36, 50, 502242), None, None, 27]) gunicorn-registry stdout | 2025-09-26 08:36:51,180 [251] [DEBUG] [app] Ending request: urn:request:b33c49d9-dede-4cc7-8653-692209243f20 (/v2/testorg/alpine/blobs/uploads/ea35af57-5501-4442-a095-14d081c13898) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:b33c49d9-dede-4cc7-8653-692209243f20', 'remote_addr': '10.129.4.11', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/ea35af57-5501-4442-a095-14d081c13898', 'path': '/v2/testorg/alpine/blobs/uploads/ea35af57-5501-4442-a095-14d081c13898', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:51,181 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:51,181 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:51,181 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:51 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/ea35af57-5501-4442-a095-14d081c13898 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:51 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/ea35af57-5501-4442-a095-14d081c13898 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.635 3617805 0.634) gunicorn-registry stdout | 2025-09-26 08:36:51,221 [251] [DEBUG] [app] Starting request: urn:request:b22c45b1-847d-42c7-bd86-cb287a06c7f8 (/v2/testorg/alpine/blobs/uploads/ea35af57-5501-4442-a095-14d081c13898) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:51,221 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'ea35af57-5501-4442-a095-14d081c13898', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:51,222 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:51,222 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:51,223 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:51,223 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:51,223 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:51,223 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:51,223 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:51,225 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,226 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,226 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,228 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,229 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,230 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,231 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,232 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:51,233 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['ea35af57-5501-4442-a095-14d081c13898', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,234 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:51,234 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:51,234 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:51,235 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:51,235 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/139d848d-c0cc-4ccf-a9ae-61afceebb234', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:51,235 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,235 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,235 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,235 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,235 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,235 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,235 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,235 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,236 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:51,236 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:51,236 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:51,236 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:51,236 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,236 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,236 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,236 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/139d848d-c0cc-4ccf-a9ae-61afceebb234?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/139d848d-c0cc-4ccf-a9ae-61afceebb234', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/139d848d-c0cc-4ccf-a9ae-61afceebb234?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/139d848d-c0cc-4ccf-a9ae-61afceebb234', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:51,236 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,237 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,237 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,237 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,237 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:51,237 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/139d848d-c0cc-4ccf-a9ae-61afceebb234 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083651Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:51,238 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083651Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 5c5ba51bc2df4c0ad5656e9b6d44032cb1bd4d4fb5fd62a17c6990cd9cced768 gunicorn-registry stdout | 2025-09-26 08:36:51,238 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 6efde8dcc9847813ece87eec0ef8b0b15ddd88b0296a76674eb982b1ccf5a20a gunicorn-registry stdout | 2025-09-26 08:36:51,238 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,238 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:51,238 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:51,244 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/139d848d-c0cc-4ccf-a9ae-61afceebb234?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:51,244 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8trc-6qetv0-1h6', 'x-amz-id-2': 'mg0l8trc-6qetv0-1h6', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:51 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:51,244 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/139d848d-c0cc-4ccf-a9ae-61afceebb23468d650a3d73ec60008f933fb' gunicorn-registry stdout | 2025-09-26 08:36:51,245 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,245 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:51,245 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,245 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8trc-6qetv0-1h6', 'HostId': 'mg0l8trc-6qetv0-1h6', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8trc-6qetv0-1h6', 'x-amz-id-2': 'mg0l8trc-6qetv0-1h6', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:51 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/139d848d-c0cc-4ccf-a9ae-61afceebb234', 'UploadId': '68d650a3d73ec60008f933fb'} gunicorn-registry stdout | 2025-09-26 08:36:51,245 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:51,246 [251] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/139d848d-c0cc-4ccf-a9ae-61afceebb234', 'UploadId': '68d650a3d73ec60008f933fb'} gunicorn-registry stdout | 2025-09-26 08:36:51,246 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,246 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,247 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,247 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,247 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,247 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,247 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:51,247 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:51,247 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:51,247 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:51,247 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,247 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,247 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,247 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/139d848d-c0cc-4ccf-a9ae-61afceebb234', 'query_string': {'uploadId': '68d650a3d73ec60008f933fb'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/139d848d-c0cc-4ccf-a9ae-61afceebb234', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/139d848d-c0cc-4ccf-a9ae-61afceebb234?uploadId=68d650a3d73ec60008f933fb', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/139d848d-c0cc-4ccf-a9ae-61afceebb234', 'UploadId': '68d650a3d73ec60008f933fb'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:51,248 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,248 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,248 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,248 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,248 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:51,248 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/139d848d-c0cc-4ccf-a9ae-61afceebb234 gunicorn-registry stdout | uploadId=68d650a3d73ec60008f933fb gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083651Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:51,248 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083651Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 7b2452a4edfbbb3887e7b0cc200cbeadfa3c15f5aca41361288ddb450d71b12e gunicorn-registry stdout | 2025-09-26 08:36:51,248 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | aad58a73a0e3c94cf56a99203021e7c8c45aedc4dab8ee681ff8c328bd1711ea gunicorn-registry stdout | 2025-09-26 08:36:51,248 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,248 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:51,249 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:51,256 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/139d848d-c0cc-4ccf-a9ae-61afceebb234?uploadId=68d650a3d73ec60008f933fb HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:36:51,256 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8trm-6wpmm3-15e3', 'x-amz-id-2': 'mg0l8trm-6wpmm3-15e3', 'Date': 'Fri, 26 Sep 2025 08:36:51 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:51,256 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:51,256 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,256 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:51,256 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,256 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8trm-6wpmm3-15e3', 'HostId': 'mg0l8trm-6wpmm3-15e3', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8trm-6wpmm3-15e3', 'x-amz-id-2': 'mg0l8trm-6wpmm3-15e3', 'date': 'Fri, 26 Sep 2025 08:36:51 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:36:51,256 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob ea35af57-5501-4442-a095-14d081c13898 took 0.02263355255126953 seconds gunicorn-registry stdout | 2025-09-26 08:36:51,257 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['ea35af57-5501-4442-a095-14d081c13898', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,258 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'ea35af57-5501-4442-a095-14d081c13898', 3616029, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwh+Hff9b+/qeWWmqppd3SvwMAAP//5lbCxQAicACiSXejWot/hT/dBexmjYfjP7TvfxH+u9PKU4t/zyyKXZ//kx0AAAAAAAAAAGi5AQAAAAA7jWAaIGF3evZCmJztN1KLH+gtbGwc6k5NGNEPvsNJ4JRiLg==', 9, '{"chunks": [["uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033", 0, 3616029]]}', 2, 7348736, datetime.datetime(2025, 9, 26, 8, 36, 50, 502242), None, None, 27]) gunicorn-registry stdout | 2025-09-26 08:36:51,260 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:51,261 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:51,261 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:51,262 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:51,262 [251] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993'} gunicorn-registry stdout | 2025-09-26 08:36:51,263 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,263 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,263 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,263 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,263 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,263 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,263 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,263 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:51,263 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:51,263 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:51,263 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:51,263 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,263 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,264 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,264 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:51,264 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,264 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,264 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,264 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,264 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:51,264 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083651Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:51,264 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083651Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 13919fe618c884cda920f4ee7a70b863f84bc615ffc222bc615b6fdfc38402bd gunicorn-registry stdout | 2025-09-26 08:36:51,264 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | cc60e16eb5883c3ae188cc2bf816964d3f409d5cfda78f65886ff22f8f48c142 gunicorn-registry stdout | 2025-09-26 08:36:51,265 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,265 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:51,265 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:51,270 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:36:51,270 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8ts2-761qy5-9k0', 'x-amz-id-2': 'mg0l8ts2-761qy5-9k0', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:51 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:51,270 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:51,270 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,270 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:51,270 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,270 [251] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:36:51,270 [251] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:36:51,270 [251] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993 gunicorn-registry stdout | 2025-09-26 08:36:51,271 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:51,272 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:51,272 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:51,272 [251] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:36:51,272 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,272 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,272 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,272 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,272 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,272 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,272 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,272 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:51,272 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:51,272 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:51,272 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:51,273 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,273 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,273 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,273 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:51,273 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,273 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,273 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,273 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,273 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,273 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:51,273 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083651Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:51,274 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083651Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 181a22ad921c9d137955edec934d77c875af496f4ed102b4ca286df80e201643 gunicorn-registry stdout | 2025-09-26 08:36:51,274 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | da32ca98c233c04925d04c03669a948d0b1d3213919a1cbd6949ece54da33b2e gunicorn-registry stdout | 2025-09-26 08:36:51,274 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,274 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,274 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:51,274 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:51,279 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:51,280 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8tsc-7bzsbt-vc0', 'x-amz-id-2': 'mg0l8tsc-7bzsbt-vc0', 'ETag': '"d972e2208679bf56cb345564cf1d854b-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:51 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '3616029', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:51 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:51,280 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:51,280 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,280 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:51,280 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,281 [251] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:36:51,281 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:51,281 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:51,281 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:51,281 [251] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993', 'extra_args': {}, 'callbacks': [], 'size': 3616029} gunicorn-registry stdout | 2025-09-26 08:36:51,281 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,281 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,281 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,281 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,281 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,281 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,281 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,282 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,282 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,282 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,282 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:51,282 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:51,282 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:51,282 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:51,282 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,282 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,282 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,282 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:51,282 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,283 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,283 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,283 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,283 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,283 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:51,283 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fd10f3e6-1986-4f55-a95e-c70b1785a033 gunicorn-registry stdout | x-amz-date:20250926T083651Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:51,283 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083651Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | ff5dc1dbb5cc43957f6c2f6cd64c198bba0db8e8e1f1d61f07e9c0205a931204 gunicorn-registry stdout | 2025-09-26 08:36:51,283 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 9b3a2a2ce197abec9281fa7bc521ed044edef8b3ddf48b5252cad34a870d2b66 gunicorn-registry stdout | 2025-09-26 08:36:51,283 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,283 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,283 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:51,284 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:51,284 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:51,309 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:36:51,309 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8tsl-7hhz3n-hd4', 'x-amz-id-2': 'mg0l8tsl-7hhz3n-hd4', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:36:51 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:51,309 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:36:51.000Z"d972e2208679bf56cb345564cf1d854b-1"' gunicorn-registry stdout | 2025-09-26 08:36:51,310 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,310 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,310 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:51,310 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,310 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:51,310 [251] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob ea35af57-5501-4442-a095-14d081c13898 with digest sha256:c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993 took 0.040093421936035156 seconds gunicorn-registry stdout | 2025-09-26 08:36:51,311 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['ea35af57-5501-4442-a095-14d081c13898', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,312 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,313 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['dfdbd6ae-c658-4b0d-af7d-ba606fa12d24', 3616029, 7348736, True, True, 'sha256:c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993']) gunicorn-registry stdout | 2025-09-26 08:36:51,314 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [28, 9]) gunicorn-registry stdout | 2025-09-26 08:36:51,315 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,315 [251] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [2, 28, datetime.datetime(2025, 9, 26, 8, 36, 51, 315628), datetime.datetime(2025, 9, 26, 9, 36, 51, 315614)]) gunicorn-registry stdout | 2025-09-26 08:36:51,316 [251] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [27]) gunicorn-registry stdout | 2025-09-26 08:36:51,318 [251] [DEBUG] [app] Ending request: urn:request:b22c45b1-847d-42c7-bd86-cb287a06c7f8 (/v2/testorg/alpine/blobs/uploads/ea35af57-5501-4442-a095-14d081c13898) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:b22c45b1-847d-42c7-bd86-cb287a06c7f8', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/ea35af57-5501-4442-a095-14d081c13898?digest=sha256:c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993', 'path': '/v2/testorg/alpine/blobs/uploads/ea35af57-5501-4442-a095-14d081c13898', 'parameters': {'digest': 'sha256:c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:51,318 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:51,318 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:51,318 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:51 +0000] "PUT /v2/testorg/alpine/blobs/uploads/ea35af57-5501-4442-a095-14d081c13898?digest=sha256%3Ac787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:51 +0000] "PUT /v2/testorg/alpine/blobs/uploads/ea35af57-5501-4442-a095-14d081c13898?digest=sha256%3Ac787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.098 1849 0.098) gunicorn-registry stdout | 2025-09-26 08:36:51,850 [255] [DEBUG] [app] Starting request: urn:request:a76da2be-51fe-41a2-98ea-d61a5b8ffa77 (/v2/testorg/alpine/blobs/uploads/4f43f4a6-44dd-4a51-b19a-bde026627796) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:51,850 [255] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '4f43f4a6-44dd-4a51-b19a-bde026627796', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:51,850 [255] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:51,850 [255] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:51,851 [255] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:51,851 [255] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:51,851 [255] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:51,851 [255] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:51,851 [255] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:51,852 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,854 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,855 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,856 [255] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,857 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,858 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,859 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,860 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:51,862 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['4f43f4a6-44dd-4a51-b19a-bde026627796', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,863 [255] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:51,863 [255] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:51,863 [255] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:51,866 [255] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:51,866 [255] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5eaed4b1-3496-4d79-8827-c8418a92e295', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:51,867 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,867 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,867 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,867 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,867 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,867 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,867 [255] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,867 [255] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,867 [255] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:51,867 [255] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:51,867 [255] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:51,867 [255] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:51,867 [255] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,868 [255] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,868 [255] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,868 [255] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/5eaed4b1-3496-4d79-8827-c8418a92e295?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5eaed4b1-3496-4d79-8827-c8418a92e295', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5eaed4b1-3496-4d79-8827-c8418a92e295?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5eaed4b1-3496-4d79-8827-c8418a92e295', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:51,868 [255] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,868 [255] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,868 [255] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,868 [255] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,868 [255] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:51,868 [255] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5eaed4b1-3496-4d79-8827-c8418a92e295 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083651Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:51,868 [255] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083651Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 91b61515c50ab9c296456d59473cc5255a46959c94fb478daafe38e7628f8783 gunicorn-registry stdout | 2025-09-26 08:36:51,868 [255] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 53180d1eff6bfbc124655d7b0cc6f3b0b773bc297fec1138d3836b2ec025f487 gunicorn-registry stdout | 2025-09-26 08:36:51,868 [255] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,868 [255] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:51,869 [255] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:51,869 [255] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | 2025-09-26 08:36:51,898 [255] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5eaed4b1-3496-4d79-8827-c8418a92e295?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:51,898 [255] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8u9h-zxat1-113a', 'x-amz-id-2': 'mg0l8u9h-zxat1-113a', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:51 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:51,898 [255] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/5eaed4b1-3496-4d79-8827-c8418a92e29568d650a3d73ec60008f93404' gunicorn-registry stdout | 2025-09-26 08:36:51,898 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,898 [255] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:51,898 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,899 [255] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8u9h-zxat1-113a', 'HostId': 'mg0l8u9h-zxat1-113a', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8u9h-zxat1-113a', 'x-amz-id-2': 'mg0l8u9h-zxat1-113a', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:51 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5eaed4b1-3496-4d79-8827-c8418a92e295', 'UploadId': '68d650a3d73ec60008f93404'} gunicorn-registry stdout | 2025-09-26 08:36:51,899 [255] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:51,900 [255] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5eaed4b1-3496-4d79-8827-c8418a92e295', 'UploadId': '68d650a3d73ec60008f93404'} gunicorn-registry stdout | 2025-09-26 08:36:51,900 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,900 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,900 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,900 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,900 [255] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,900 [255] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,900 [255] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:51,900 [255] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:51,900 [255] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:51,900 [255] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:51,901 [255] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,901 [255] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,901 [255] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,901 [255] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/5eaed4b1-3496-4d79-8827-c8418a92e295', 'query_string': {'uploadId': '68d650a3d73ec60008f93404'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5eaed4b1-3496-4d79-8827-c8418a92e295', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5eaed4b1-3496-4d79-8827-c8418a92e295?uploadId=68d650a3d73ec60008f93404', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5eaed4b1-3496-4d79-8827-c8418a92e295', 'UploadId': '68d650a3d73ec60008f93404'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:51,901 [255] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,901 [255] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,901 [255] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,901 [255] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,901 [255] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:51,901 [255] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5eaed4b1-3496-4d79-8827-c8418a92e295 gunicorn-registry stdout | uploadId=68d650a3d73ec60008f93404 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083651Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:51,902 [255] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083651Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | ac46a8211b07cde5b92893f2dfdd4c51857c3e15037d7c980357afbef3792b88 gunicorn-registry stdout | 2025-09-26 08:36:51,902 [255] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 9c629442b5101c93993c807f2ee67f9ee489734794204d70d5fe3a8172dcb2c1 gunicorn-registry stdout | 2025-09-26 08:36:51,902 [255] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,902 [255] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:51,902 [255] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:51,909 [255] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5eaed4b1-3496-4d79-8827-c8418a92e295?uploadId=68d650a3d73ec60008f93404 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:36:51,909 [255] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8u9r-163flw-utr', 'x-amz-id-2': 'mg0l8u9r-163flw-utr', 'Date': 'Fri, 26 Sep 2025 08:36:51 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:51,909 [255] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:51,910 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,910 [255] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:51,910 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,910 [255] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8u9r-163flw-utr', 'HostId': 'mg0l8u9r-163flw-utr', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8u9r-163flw-utr', 'x-amz-id-2': 'mg0l8u9r-163flw-utr', 'date': 'Fri, 26 Sep 2025 08:36:51 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:36:51,910 [255] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 4f43f4a6-44dd-4a51-b19a-bde026627796 took 0.046991825103759766 seconds gunicorn-registry stdout | 2025-09-26 08:36:51,910 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['4f43f4a6-44dd-4a51-b19a-bde026627796', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,912 [255] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, '4f43f4a6-44dd-4a51-b19a-bde026627796', 576, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwOGQwNTU2NTUwZjcyZTQ1MTExZjlhZWMxYmEzNzliMjQ4NjNkZGZlNDczMDdhMDk1ZTIxNzJiZjAxMGFmIl19fQAAAAAAAAAAABIAAAAAAAC3DmlfrZhpIIW4uNNvedJze8b9aZqymWtPm0Hx+j++VpRiLg==', 9, '{"chunks": [["uploads/9f5f586b-5b5e-4417-bd4c-e527437ba971", 0, 576]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 36, 51, 601068), None, None, 28]) gunicorn-registry stdout | 2025-09-26 08:36:51,913 [255] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:51,913 [255] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:51,913 [255] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:51,914 [255] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:51,914 [255] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c'} gunicorn-registry stdout | 2025-09-26 08:36:51,915 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,915 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,915 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,915 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,915 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,915 [255] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,915 [255] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,915 [255] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:51,915 [255] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:51,915 [255] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:51,915 [255] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:51,915 [255] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,915 [255] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,916 [255] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,916 [255] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:51,916 [255] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,916 [255] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,916 [255] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,916 [255] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,916 [255] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:51,916 [255] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083651Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:51,916 [255] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083651Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | c9a02dad0eacaff47a09ff8a52f897b5388d887cc8efd217efaafe7a14f98afb gunicorn-registry stdout | 2025-09-26 08:36:51,917 [255] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | cc35641522be90de957d4bfdac9f7912799b2cb638ce50b8f9550fb577074ae5 gunicorn-registry stdout | 2025-09-26 08:36:51,917 [255] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,917 [255] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:51,917 [255] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:51,922 [255] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:36:51,922 [255] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8ua6-1excdp-g71', 'x-amz-id-2': 'mg0l8ua6-1excdp-g71', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:51 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:51,922 [255] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:51,924 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,924 [255] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:51,924 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,924 [255] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:36:51,925 [255] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:36:51,925 [255] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c gunicorn-registry stdout | 2025-09-26 08:36:51,925 [255] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:51,925 [255] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:51,925 [255] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:51,926 [255] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:36:51,926 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,926 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,926 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,926 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,926 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,926 [255] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,926 [255] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,926 [255] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:51,927 [255] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:51,927 [255] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:51,927 [255] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:51,927 [255] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,927 [255] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,927 [255] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,927 [255] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/9f5f586b-5b5e-4417-bd4c-e527437ba971', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/9f5f586b-5b5e-4417-bd4c-e527437ba971', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/9f5f586b-5b5e-4417-bd4c-e527437ba971', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/9f5f586b-5b5e-4417-bd4c-e527437ba971'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:51,928 [255] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,928 [255] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,928 [255] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,928 [255] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,928 [255] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,928 [255] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:51,928 [255] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/9f5f586b-5b5e-4417-bd4c-e527437ba971 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083651Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:51,928 [255] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083651Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 00cb5dc3b0f5dc619f55dfc6e4941e32315705db76bd9065b310ed4971b484fe gunicorn-registry stdout | 2025-09-26 08:36:51,928 [255] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 94df0261a2e9ae09763e5b8f42989d89fc7fab21c09c5792ef8973795705fc64 gunicorn-registry stdout | 2025-09-26 08:36:51,928 [255] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,928 [255] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,928 [255] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:51,929 [255] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:51,929 [255] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | 2025-09-26 08:36:51,955 [255] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/9f5f586b-5b5e-4417-bd4c-e527437ba971 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:51,956 [255] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8ub3-1yt4cg-1e69', 'x-amz-id-2': 'mg0l8ub3-1yt4cg-1e69', 'ETag': '"ad3471c562bc7fd7ea9b64d2c5eaf89d-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:51 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '576', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:51 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:51,956 [255] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:51,956 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,956 [255] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:51,956 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,957 [255] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:36:51,957 [255] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:51,957 [255] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:51,957 [255] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:51,957 [255] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/9f5f586b-5b5e-4417-bd4c-e527437ba971'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c', 'extra_args': {}, 'callbacks': [], 'size': 576} gunicorn-registry stdout | 2025-09-26 08:36:51,957 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,957 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,958 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,958 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,958 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,958 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,958 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,958 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,958 [255] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,958 [255] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,958 [255] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:51,958 [255] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:51,958 [255] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:51,958 [255] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:51,958 [255] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,959 [255] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,959 [255] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,959 [255] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/9f5f586b-5b5e-4417-bd4c-e527437ba971', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/9f5f586b-5b5e-4417-bd4c-e527437ba971', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:51,959 [255] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,959 [255] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,959 [255] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,959 [255] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,959 [255] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,959 [255] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:51,959 [255] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/9f5f586b-5b5e-4417-bd4c-e527437ba971 gunicorn-registry stdout | x-amz-date:20250926T083651Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:51,960 [255] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083651Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 9782fb4c4c0c20bddc0ab2bc1a8631aff5d0c8f5d7707edd6541fb6b24826c03 gunicorn-registry stdout | 2025-09-26 08:36:51,960 [255] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | f8d73b9902f560c4e7f8a8958e11468b31085321a7896b8e618a33e7c8e1d5c6 gunicorn-registry stdout | 2025-09-26 08:36:51,960 [255] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,960 [255] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,960 [255] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:51,960 [255] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:51,960 [255] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:51,987 [255] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:36:51,988 [255] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8ubd-24on2h-9c8', 'x-amz-id-2': 'mg0l8ubd-24on2h-9c8', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:36:51 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:51,988 [255] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:36:51.000Z"ad3471c562bc7fd7ea9b64d2c5eaf89d-1"' gunicorn-registry stdout | 2025-09-26 08:36:51,988 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,988 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:51,988 [255] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:51,988 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:51,989 [255] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:51,989 [255] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 4f43f4a6-44dd-4a51-b19a-bde026627796 with digest sha256:957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c took 0.0645146369934082 seconds gunicorn-registry stdout | 2025-09-26 08:36:51,990 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['4f43f4a6-44dd-4a51-b19a-bde026627796', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,991 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,992 [255] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['1848f78c-1376-4017-bdff-fd937230ce74', 576, None, True, True, 'sha256:957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c']) gunicorn-registry stdout | 2025-09-26 08:36:51,993 [255] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [29, 9]) gunicorn-registry stdout | 2025-09-26 08:36:51,993 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:51,994 [255] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [2, 29, datetime.datetime(2025, 9, 26, 8, 36, 51, 994359), datetime.datetime(2025, 9, 26, 9, 36, 51, 994344)]) gunicorn-registry stdout | 2025-09-26 08:36:51,995 [255] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [28]) gunicorn-registry stdout | 2025-09-26 08:36:51,997 [255] [DEBUG] [app] Ending request: urn:request:a76da2be-51fe-41a2-98ea-d61a5b8ffa77 (/v2/testorg/alpine/blobs/uploads/4f43f4a6-44dd-4a51-b19a-bde026627796) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:a76da2be-51fe-41a2-98ea-d61a5b8ffa77', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/4f43f4a6-44dd-4a51-b19a-bde026627796?digest=sha256:957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c', 'path': '/v2/testorg/alpine/blobs/uploads/4f43f4a6-44dd-4a51-b19a-bde026627796', 'parameters': {'digest': 'sha256:957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:51,997 [255] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:51,997 [255] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:51,997 [255] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:51 +0000] "PUT /v2/testorg/alpine/blobs/uploads/4f43f4a6-44dd-4a51-b19a-bde026627796?digest=sha256%3A957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:51 +0000] "PUT /v2/testorg/alpine/blobs/uploads/4f43f4a6-44dd-4a51-b19a-bde026627796?digest=sha256%3A957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.148 1849 0.149) blobuploadcleanupworker stdout | 2025-09-26 08:36:52,035 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} proxycacheblobworker stdout | 2025-09-26 08:36:52,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:36:52,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:02.477454+00:00 (in 9.999480 seconds) proxycacheblobworker stdout | 2025-09-26 08:36:52,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:02 GMT)" (scheduled at 2025-09-26 08:36:52.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:36:52,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:36:52,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 36, 52, 478450), True, datetime.datetime(2025, 9, 26, 8, 36, 52, 478450), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:36:52,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:36:52,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:36:52,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:02 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:36:52,525 [247] [DEBUG] [app] Starting request: urn:request:663ecfe5-2d7d-4bf8-a30c-10de6866fb04 (/_storage_proxy_auth) {'X-Forwarded-For': '3.147.184.98'} gunicorn-web stdout | 2025-09-26 08:36:52,525 [247] [DEBUG] [storage.downloadproxy] Got token b'eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODEyLCJpYXQiOjE3NTg4NzU4MTIsImV4cCI6MTc1ODg3NjQxMiwic3ViIjoic3RvcmFnZXByb3h5IiwiYWNjZXNzIjpbeyJ0eXBlIjoic3RvcmFnZXByb3h5IiwidXJpIjoicXVheS1kYXRhc3RvcmUtZTI5YzM5OTQtNjJlYi00ZTlmLTk1NTAtYmFhMTFmODc0MDg0L2RhdGFzdG9yYWdlL3JlZ2lzdHJ5L3NoYTI1Ni9kNi9kNjlkNGQ0MWNmZTJlZTY4MGQ2OTcyNzk1ZTJhMWViOWU0ZGM0ZWMzYjNjNWUwNzk3YzlhYjQzYmIzNzI2ZmE3P0FXU0FjY2Vzc0tleUlkPUtxVUFodjYwQUdsQUREcTBNY0taJlNpZ25hdHVyZT05UUlsJTJGYlduOW12ZzV5cXlyZDh4VWFmJTJGT3JvJTNEJkV4cGlyZXM9MTc1ODg3NjQxMiIsImhvc3QiOiJzMy5vcGVuc2hpZnQtc3RvcmFnZS5zdmMuY2x1c3Rlci5sb2NhbDo0NDMiLCJzY2hlbWUiOiJodHRwcyJ9XSwiY29udGV4dCI6e319.cgwRP8y6oGELcmT4DSnstlRmvxo0aBuZGsnQA5YdwI7KtllSbnKfCHeje0sHw_awAG97q-i4cS5Z_KeIqK65wNEBHatzTfcKNKSTWmuSF7V3QeURGkshTQG635IPe06ny-oalI01Zh73z3YGoPt3ULlSFp24HEzLDrE8Q-0GBkhzMhPfFXVow2PRHlI9oVGT147sIBmg4jd5kCGx9w184YGLtK-un0avBjYkGMjTq22MT6YKoiylZsveocyprHom7Bz_ehbc6oQdoPrT_d6uyEyVjrr7v7LqkMBpZwKlI58GgrJ4ueh98r8PNqCGqczOa994_VTo8I5oYC6hgNApZw' for storage proxy auth request /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ERXlMQ0pwWVhRaU9qRTNOVGc0TnpVNE1USXNJbVY0Y0NJNk1UYzFPRGczTmpReE1pd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5a05pOWtOamxrTkdRME1XTm1aVEpsWlRZNE1HUTJPVGN5TnprMVpUSmhNV1ZpT1dVMFpHTTBaV016WWpOak5XVXdOemszWXpsaFlqUXpZbUl6TnpJMlptRTNQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDA1VVVsc0pUSkdZbGR1T1cxMlp6VjVjWGx5WkRoNFZXRm1KVEpHVDNKdkpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qUXhNaUlzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5jZ3dSUDh5Nm9HRUxjbVQ0RFNuc3RsUm12eG8wYUJ1WkdzblFBNVlkd0k3S3RsbFNibktmQ0hlamUwc0h3X2F3QUc5N3EtaTRjUzVaX0tlSXFLNjV3TkVCSGF0elRmY0tOS1NUV211U0Y3VjNRZVVSR2tzaFRRRzYzNUlQZTA2bnktb2FsSTAxWmg3M3ozWUdvUHQzVUxsU0ZwMjRIRXpMRHJFOFEtMEdCa2h6TWhQZkZYVm93MlBSSGxJOW9WR1QxNDdzSUJtZzRqZDVrQ0d4OXcxODRZR0x0Sy11bjBhdkJqWWtHTWpUcTIyTVQ2WUtvaXlsWnN2ZW9jeXBySG9tN0J6X2VoYmM2b1Fkb1ByVF9kNnV5RXlWanJyN3Y3THFrTUJwWndLbEk1OEdncko0dWVoOThyOFBOcUNHcWN6T2E5OTRfVlRvOEk1b1lDNmhnTkFwWnc=/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=9QIl%2FbWn9mvg5yqyrd8xUaf%2FOro%3D&Expires=1758876412 with parts ['ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ERXlMQ0pwWVhRaU9qRTNOVGc0TnpVNE1USXNJbVY0Y0NJNk1UYzFPRGczTmpReE1pd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5a05pOWtOamxrTkdRME1XTm1aVEpsWlRZNE1HUTJPVGN5TnprMVpUSmhNV1ZpT1dVMFpHTTBaV016WWpOak5XVXdOemszWXpsaFlqUXpZbUl6TnpJMlptRTNQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDA1VVVsc0pUSkdZbGR1T1cxMlp6VjVjWGx5WkRoNFZXRm1KVEpHVDNKdkpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qUXhNaUlzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5jZ3dSUDh5Nm9HRUxjbVQ0RFNuc3RsUm12eG8wYUJ1WkdzblFBNVlkd0k3S3RsbFNibktmQ0hlamUwc0h3X2F3QUc5N3EtaTRjUzVaX0tlSXFLNjV3TkVCSGF0elRmY0tOS1NUV211U0Y3VjNRZVVSR2tzaFRRRzYzNUlQZTA2bnktb2FsSTAxWmg3M3ozWUdvUHQzVUxsU0ZwMjRIRXpMRHJFOFEtMEdCa2h6TWhQZkZYVm93MlBSSGxJOW9WR1QxNDdzSUJtZzRqZDVrQ0d4OXcxODRZR0x0Sy11bjBhdkJqWWtHTWpUcTIyTVQ2WUtvaXlsWnN2ZW9jeXBySG9tN0J6X2VoYmM2b1Fkb1ByVF9kNnV5RXlWanJyN3Y3THFrTUJwWndLbEk1OEdncko0dWVoOThyOFBOcUNHcWN6T2E5OTRfVlRvOEk1b1lDNmhnTkFwWnc=', 'https', 's3.openshift-storage.svc.cluster.local:443', 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=9QIl%2FbWn9mvg5yqyrd8xUaf%2FOro%3D&Expires=1758876412'] gunicorn-web stdout | 2025-09-26 08:36:52,526 [247] [DEBUG] [app] Ending request: urn:request:663ecfe5-2d7d-4bf8-a30c-10de6866fb04 (/_storage_proxy_auth) {'endpoint': '_storage_proxy_auth', 'request_id': 'urn:request:663ecfe5-2d7d-4bf8-a30c-10de6866fb04', 'remote_addr': '3.147.184.98', 'http_method': 'GET', 'original_url': 'https://web_app_server/_storage_proxy_auth', 'path': '/_storage_proxy_auth', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'Go-http-client/1.1'} gunicorn-web stdout | 2025-09-26 08:36:52,527 [247] [INFO] [gunicorn.access] 3.147.184.98 - - [26/Sep/2025:08:36:52 +0000] "GET /_storage_proxy_auth HTTP/1.0" 200 2 "-" "Go-http-client/1.1" gunicorn-registry stdout | 2025-09-26 08:36:52,533 [258] [DEBUG] [app] Starting request: urn:request:7bd3f41e-0596-40cb-82ff-899bd2ae65ce (/v2/testorg/alpine/blobs/sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:52,534 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:52,534 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:52,534 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:52,535 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:52,535 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:52,535 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:52,535 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:52,535 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:52,537 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,538 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,539 [258] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:52,539 [258] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac_2 gunicorn-registry stdout | 2025-09-26 08:36:52,540 [258] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:52,541 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,542 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,543 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,544 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,545 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,545 [258] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac_2: None gunicorn-registry stdout | 2025-09-26 08:36:52,546 [258] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac_2: None gunicorn-registry stdout | 2025-09-26 08:36:52,546 [258] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:52,546 [258] [DEBUG] [app] Ending request: urn:request:7bd3f41e-0596-40cb-82ff-899bd2ae65ce (/v2/testorg/alpine/blobs/sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:7bd3f41e-0596-40cb-82ff-899bd2ae65ce', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac', 'path': '/v2/testorg/alpine/blobs/sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:52,546 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:52,546 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:52,547 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:52 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:52 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.015 1714 0.014) gunicorn-registry stdout | 2025-09-26 08:36:52,712 [251] [DEBUG] [app] Starting request: urn:request:4fcccb9f-08f5-428f-be5f-8e6e0c514b72 (/v2/testorg/alpine/blobs/sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:52,712 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:52,712 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:52,712 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:52,714 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:52,714 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:52,714 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:52,714 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:52,714 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:52,715 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,717 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,718 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:52,718 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac_2 gunicorn-registry stdout | 2025-09-26 08:36:52,718 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:52,719 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,720 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,721 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,722 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,723 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,724 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac_2: None gunicorn-registry stdout | 2025-09-26 08:36:52,724 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac_2: None gunicorn-registry stdout | 2025-09-26 08:36:52,725 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:52,725 [251] [DEBUG] [app] Ending request: urn:request:4fcccb9f-08f5-428f-be5f-8e6e0c514b72 (/v2/testorg/alpine/blobs/sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:4fcccb9f-08f5-428f-be5f-8e6e0c514b72', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac', 'path': '/v2/testorg/alpine/blobs/sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:52,725 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:52,725 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:52,725 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:52 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:52 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.015 1714 0.015) gunicorn-registry stdout | 2025-09-26 08:36:52,768 [251] [DEBUG] [app] Starting request: urn:request:f5a928af-933e-4569-842b-1c77ef560041 (/v2/testorg/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:52,768 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:52,769 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:52,769 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:52,770 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:52,770 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:52,770 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:52,770 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:52,770 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:52,771 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,773 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,774 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,776 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,779 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,780 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,781 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:52,782 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,784 [251] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [2, 'b78094d9-c363-45fc-8aff-f49d9cc4a87b', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 36, 52, 783587)]) gunicorn-registry stdout | 2025-09-26 08:36:52,786 [251] [DEBUG] [app] Ending request: urn:request:f5a928af-933e-4569-842b-1c77ef560041 (/v2/testorg/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:f5a928af-933e-4569-842b-1c77ef560041', 'remote_addr': '10.131.2.20', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/', 'path': '/v2/testorg/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:52,786 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:52,786 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:52,787 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:52 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:52 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.020 1693 0.020) gunicorn-registry stdout | 2025-09-26 08:36:52,829 [251] [DEBUG] [app] Starting request: urn:request:4556059d-e7de-47bc-a39e-43a90cfa3485 (/v2/testorg/alpine/blobs/uploads/b78094d9-c363-45fc-8aff-f49d9cc4a87b) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:52,829 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'b78094d9-c363-45fc-8aff-f49d9cc4a87b', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:52,829 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:52,829 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:52,830 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:52,830 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:52,830 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:52,830 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:52,831 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:52,831 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,833 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,833 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,835 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,837 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,838 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,840 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,841 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:52,842 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['b78094d9-c363-45fc-8aff-f49d9cc4a87b', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:52,843 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:52,843 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:52,844 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:52,845 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:52,845 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:52,845 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,845 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,845 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,845 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,846 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:52,846 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,846 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,846 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:52,846 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:52,846 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:52,846 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:52,846 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:52,846 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,846 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,846 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,846 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:52,847 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:52,847 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:52,847 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,847 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,847 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:52,847 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083652Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:52,847 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083652Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 75ded4e8460f88e9e637e595089b1a15dfa6357910ed0b22a1d386a99bec8301 gunicorn-registry stdout | 2025-09-26 08:36:52,847 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | f2b5138a3a461f07f864d8484dfdb874eb3894366ff047c3d023a67cfe98cdc0 gunicorn-registry stdout | 2025-09-26 08:36:52,847 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,848 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:52,848 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:52,855 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:52,856 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8v02-aakn8-14s', 'x-amz-id-2': 'mg0l8v02-aakn8-14s', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:52 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:52,856 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d41068d650a4d73ec60008f93407' gunicorn-registry stdout | 2025-09-26 08:36:52,856 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,856 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:52,856 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:52,856 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8v02-aakn8-14s', 'HostId': 'mg0l8v02-aakn8-14s', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8v02-aakn8-14s', 'x-amz-id-2': 'mg0l8v02-aakn8-14s', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:52 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410', 'UploadId': '68d650a4d73ec60008f93407'} gunicorn-registry stdout | 2025-09-26 08:36:52,856 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload exportactionlogsworker stdout | 2025-09-26 08:36:52,887 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:36:52,887 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:50.885619+00:00 (in 57.998155 seconds) exportactionlogsworker stdout | 2025-09-26 08:36:52,887 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:52 GMT)" (scheduled at 2025-09-26 08:36:52.886914+00:00) exportactionlogsworker stdout | 2025-09-26 08:36:52,887 [56] [DEBUG] [workers.queueworker] Running watchdog. exportactionlogsworker stdout | 2025-09-26 08:36:52,887 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:52 GMT)" executed successfully nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:52 +0000] "GET /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ERXlMQ0pwWVhRaU9qRTNOVGc0TnpVNE1USXNJbVY0Y0NJNk1UYzFPRGczTmpReE1pd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5a05pOWtOamxrTkdRME1XTm1aVEpsWlRZNE1HUTJPVGN5TnprMVpUSmhNV1ZpT1dVMFpHTTBaV016WWpOak5XVXdOemszWXpsaFlqUXpZbUl6TnpJMlptRTNQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDA1VVVsc0pUSkdZbGR1T1cxMlp6VjVjWGx5WkRoNFZXRm1KVEpHVDNKdkpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qUXhNaUlzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5jZ3dSUDh5Nm9HRUxjbVQ0RFNuc3RsUm12eG8wYUJ1WkdzblFBNVlkd0k3S3RsbFNibktmQ0hlamUwc0h3X2F3QUc5N3EtaTRjUzVaX0tlSXFLNjV3TkVCSGF0elRmY0tOS1NUV211U0Y3VjNRZVVSR2tzaFRRRzYzNUlQZTA2bnktb2FsSTAxWmg3M3ozWUdvUHQzVUxsU0ZwMjRIRXpMRHJFOFEtMEdCa2h6TWhQZkZYVm93MlBSSGxJOW9WR1QxNDdzSUJtZzRqZDVrQ0d4OXcxODRZR0x0Sy11bjBhdkJqWWtHTWpUcTIyTVQ2WUtvaXlsWnN2ZW9jeXBySG9tN0J6X2VoYmM2b1Fkb1ByVF9kNnV5RXlWanJyN3Y3THFrTUJwWndLbEk1OEdncko0dWVoOThyOFBOcUNHcWN6T2E5OTRfVlRvOEk1b1lDNmhnTkFwWnc=/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d6/d69d4d41cfe2ee680d6972795e2a1eb9e4dc4ec3b3c5e0797c9ab43bb3726fa7?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=9QIl%2FbWn9mvg5yqyrd8xUaf%2FOro%3D&Expires=1758876412 HTTP/1.1" 200 4125354 "-" "Go-http-client/1.1" (0.366 2415 0.364) gunicorn-registry stdout | 2025-09-26 08:36:52,904 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:36:52,905 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:36:52,905 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410', 'UploadId': '68d650a4d73ec60008f93407', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b897c040>, 'ContentLength': 80931} gunicorn-registry stdout | 2025-09-26 08:36:52,905 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,905 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,905 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,905 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,906 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:52,906 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,906 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,906 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:52,906 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:52,906 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:52,906 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:52,906 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:52,906 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,906 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,906 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:36:52,906 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,906 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,907 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410', 'query_string': {'uploadId': '68d650a4d73ec60008f93407', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '80931', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': '1jlULAYOXHDiWDg1zF865Q==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b897c040>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410?uploadId=68d650a4d73ec60008f93407&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410', 'UploadId': '68d650a4d73ec60008f93407', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b897c040>, 'ContentLength': 80931}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:52,907 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:52,907 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:52,907 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,907 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,907 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:52,907 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410 gunicorn-registry stdout | partNumber=1&uploadId=68d650a4d73ec60008f93407 gunicorn-registry stdout | content-length:80931 gunicorn-registry stdout | content-md5:1jlULAYOXHDiWDg1zF865Q== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083652Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:52,907 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083652Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 6b9a34882943cd0d64623bb1c5f88d8a476afcd60125c687c1a45eefe61c13b1 gunicorn-registry stdout | 2025-09-26 08:36:52,907 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | f00f028a68f2149376cacccc09abca34ed46dab42c00a84062c6b470bcb790a5 gunicorn-registry stdout | 2025-09-26 08:36:52,907 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,907 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:52,908 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:52,908 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:52,910 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:36:52,985 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410?uploadId=68d650a4d73ec60008f93407&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:52,985 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8v1p-19mg60-vnk', 'x-amz-id-2': 'mg0l8v1p-19mg60-vnk', 'ETag': '"d639542c060e5c70e2583835cc5f3ae5"', 'Date': 'Fri, 26 Sep 2025 08:36:52 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:36:52,985 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:52,986 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,986 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:52,986 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:52,986 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8v1p-19mg60-vnk', 'HostId': 'mg0l8v1p-19mg60-vnk', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8v1p-19mg60-vnk', 'x-amz-id-2': 'mg0l8v1p-19mg60-vnk', 'etag': '"d639542c060e5c70e2583835cc5f3ae5"', 'date': 'Fri, 26 Sep 2025 08:36:52 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"d639542c060e5c70e2583835cc5f3ae5"'} gunicorn-registry stdout | 2025-09-26 08:36:52,986 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410', 'UploadId': '68d650a4d73ec60008f93407', 'MultipartUpload': {'Parts': [{'ETag': '"d639542c060e5c70e2583835cc5f3ae5"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:36:52,986 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,986 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,986 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,986 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:52,986 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,986 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,986 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:52,986 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:52,986 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:52,986 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:52,986 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:52,987 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,987 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,987 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,987 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410', 'query_string': {'uploadId': '68d650a4d73ec60008f93407'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"d639542c060e5c70e2583835cc5f3ae5"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410?uploadId=68d650a4d73ec60008f93407', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410', 'UploadId': '68d650a4d73ec60008f93407', 'MultipartUpload': {'Parts': [{'ETag': '"d639542c060e5c70e2583835cc5f3ae5"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:52,987 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:52,987 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:52,987 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,987 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,987 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:52,987 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410 gunicorn-registry stdout | uploadId=68d650a4d73ec60008f93407 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:81cf151559594a3cdea98729ef85c714fc92cafd77bdee503ef24381b78e8e03 gunicorn-registry stdout | x-amz-date:20250926T083652Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 81cf151559594a3cdea98729ef85c714fc92cafd77bdee503ef24381b78e8e03 gunicorn-registry stdout | 2025-09-26 08:36:52,987 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083652Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 7d72a16c63f24b03b258b2816c0200cfee5703e4990e94e1a0e1a93dc5cda074 gunicorn-registry stdout | 2025-09-26 08:36:52,987 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | dcbe039055d251fd871be7aa403841566745b834ec7a5e8646abab0ef55e925c gunicorn-registry stdout | 2025-09-26 08:36:52,988 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:52,988 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:52,988 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:53,005 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410?uploadId=68d650a4d73ec60008f93407 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:36:53,005 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8v3y-2lnolg-b4e', 'x-amz-id-2': 'mg0l8v3y-2lnolg-b4e', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:53,005 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410"9c5b9ae38c3793dc8e458e2508cbe466-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410?uploadId=68d650a4d73ec60008f93407' gunicorn-registry stdout | 2025-09-26 08:36:53,005 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,005 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,005 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:53,006 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,006 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8v3y-2lnolg-b4e', 'HostId': 'mg0l8v3y-2lnolg-b4e', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8v3y-2lnolg-b4e', 'x-amz-id-2': 'mg0l8v3y-2lnolg-b4e', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410?uploadId=68d650a4d73ec60008f93407', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f2d73a81-f833-43da-9980-a58a2bc2d410', 'ETag': '"9c5b9ae38c3793dc8e458e2508cbe466-1"'} gunicorn-registry stdout | 2025-09-26 08:36:53,006 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:53,007 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:53,007 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 80931 bytes to blob b78094d9-c363-45fc-8aff-f49d9cc4a87b took 0.1632232666015625 seconds gunicorn-registry stdout | 2025-09-26 08:36:53,007 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['b78094d9-c363-45fc-8aff-f49d9cc4a87b', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,009 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'b78094d9-c363-45fc-8aff-f49d9cc4a87b', 80931, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwYXRpb25zaGlwVHlwZSI6IkdFTkVSQVRFRF9GUk9NIn1dfX1iMjIxNTNmYzZhNGY4ZWM5NmRkMTM1OCIsInJlbCMAAAAAAAAAAOAJAAAAAAC7r9UiTuMHfPuQC+7h8iPvwCQxo2n9jlqliEbGIDvGA5RiLg==', 9, '{"chunks": [["uploads/f2d73a81-f833-43da-9980-a58a2bc2d410", 0, 80931]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 36, 52, 783587), None, None, 29]) gunicorn-registry stdout | 2025-09-26 08:36:53,011 [251] [DEBUG] [app] Ending request: urn:request:4556059d-e7de-47bc-a39e-43a90cfa3485 (/v2/testorg/alpine/blobs/uploads/b78094d9-c363-45fc-8aff-f49d9cc4a87b) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:4556059d-e7de-47bc-a39e-43a90cfa3485', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/b78094d9-c363-45fc-8aff-f49d9cc4a87b', 'path': '/v2/testorg/alpine/blobs/uploads/b78094d9-c363-45fc-8aff-f49d9cc4a87b', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:53,012 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:53,012 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:53,012 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:53 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/b78094d9-c363-45fc-8aff-f49d9cc4a87b HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:53 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/b78094d9-c363-45fc-8aff-f49d9cc4a87b HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.185 82705 0.184) gunicorn-registry stdout | 2025-09-26 08:36:53,036 [251] [DEBUG] [app] Starting request: urn:request:314b67b6-208e-4958-a0e9-2a60b7bd042e (/v2/testorg/alpine/blobs/uploads/c168cb94-a532-4a9f-b11f-48e2d51c7d3b) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:53,036 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'c168cb94-a532-4a9f-b11f-48e2d51c7d3b', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:53,036 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:53,036 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:53,037 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:53,037 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:53,037 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:53,037 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:53,037 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:53,038 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,039 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,040 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,041 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,042 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,043 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,044 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,045 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:53,046 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['c168cb94-a532-4a9f-b11f-48e2d51c7d3b', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,047 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:53,047 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:53,047 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:53,048 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:53,048 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:53,048 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,048 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,048 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,048 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,048 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,048 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,048 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,048 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,048 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:53,048 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:53,048 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:53,049 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:53,049 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,049 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,049 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,049 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:53,049 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,049 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,049 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,049 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,049 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:53,049 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083653Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:53,049 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083653Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 87a99f1c1b311af2403ea51e59b3a7f909a799d97dd5cd9d39cd619f432a2535 gunicorn-registry stdout | 2025-09-26 08:36:53,049 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 28ec93633e2a4f19ee8a92f41ee32167cbab4c85c8976f3a60969661e917be73 gunicorn-registry stdout | 2025-09-26 08:36:53,049 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,050 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:53,050 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:53,056 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:53,056 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8v5n-3m3fpo-9fu', 'x-amz-id-2': 'mg0l8v5n-3m3fpo-9fu', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:53,056 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a0968d650a5d73ec60008f9340d' gunicorn-registry stdout | 2025-09-26 08:36:53,056 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,056 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:53,056 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,056 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8v5n-3m3fpo-9fu', 'HostId': 'mg0l8v5n-3m3fpo-9fu', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8v5n-3m3fpo-9fu', 'x-amz-id-2': 'mg0l8v5n-3m3fpo-9fu', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09', 'UploadId': '68d650a5d73ec60008f9340d'} gunicorn-registry stdout | 2025-09-26 08:36:53,057 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:53,057 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:36:53,057 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:36:53,058 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09', 'UploadId': '68d650a5d73ec60008f9340d', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89a78d0>, 'ContentLength': 5642} gunicorn-registry stdout | 2025-09-26 08:36:53,058 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,058 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,058 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,058 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,058 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,058 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,058 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,058 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,058 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:53,058 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:53,058 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:53,058 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:53,058 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,058 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,058 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:36:53,059 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,059 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,059 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09', 'query_string': {'uploadId': '68d650a5d73ec60008f9340d', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '5642', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'U/6BVirO36H2QU+Ev4eSdQ==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b89a78d0>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09?uploadId=68d650a5d73ec60008f9340d&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09', 'UploadId': '68d650a5d73ec60008f9340d', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89a78d0>, 'ContentLength': 5642}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:53,059 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,059 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,059 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,059 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,059 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:53,059 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09 gunicorn-registry stdout | partNumber=1&uploadId=68d650a5d73ec60008f9340d gunicorn-registry stdout | content-length:5642 gunicorn-registry stdout | content-md5:U/6BVirO36H2QU+Ev4eSdQ== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083653Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:53,059 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083653Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | a2fb78b0ab42124251bc5123f062d429a1a2661fecba4bdedf76eece77fb1a86 gunicorn-registry stdout | 2025-09-26 08:36:53,059 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | cf5d56f447ba33363b0e6c97f2cf3614925bc8b1c233c8d62dffab81dbd45878 gunicorn-registry stdout | 2025-09-26 08:36:53,059 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,059 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:53,059 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:53,060 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:53,061 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:36:53,123 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09?uploadId=68d650a5d73ec60008f9340d&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:53,123 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8v5x-3rx0xm-iws', 'x-amz-id-2': 'mg0l8v5x-3rx0xm-iws', 'ETag': '"53fe81562acedfa1f6414f84bf879275"', 'Date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:36:53,123 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:53,124 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,124 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:53,124 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,124 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8v5x-3rx0xm-iws', 'HostId': 'mg0l8v5x-3rx0xm-iws', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8v5x-3rx0xm-iws', 'x-amz-id-2': 'mg0l8v5x-3rx0xm-iws', 'etag': '"53fe81562acedfa1f6414f84bf879275"', 'date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"53fe81562acedfa1f6414f84bf879275"'} gunicorn-registry stdout | 2025-09-26 08:36:53,124 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09', 'UploadId': '68d650a5d73ec60008f9340d', 'MultipartUpload': {'Parts': [{'ETag': '"53fe81562acedfa1f6414f84bf879275"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:36:53,125 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,125 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,125 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,125 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,125 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,125 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,125 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,125 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:53,125 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:53,125 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:53,125 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:53,125 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,125 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,125 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,125 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09', 'query_string': {'uploadId': '68d650a5d73ec60008f9340d'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"53fe81562acedfa1f6414f84bf879275"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09?uploadId=68d650a5d73ec60008f9340d', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09', 'UploadId': '68d650a5d73ec60008f9340d', 'MultipartUpload': {'Parts': [{'ETag': '"53fe81562acedfa1f6414f84bf879275"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:53,125 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,125 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,125 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,125 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,126 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:53,126 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09 gunicorn-registry stdout | uploadId=68d650a5d73ec60008f9340d gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:8fd8751243ff93bdf546c51af10fc98a62318f0fac557a86432cc4c78f3a497b gunicorn-registry stdout | x-amz-date:20250926T083653Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 8fd8751243ff93bdf546c51af10fc98a62318f0fac557a86432cc4c78f3a497b gunicorn-registry stdout | 2025-09-26 08:36:53,126 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083653Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 491764a6f401265863884ebaafa157d2d1812877fa5da5f3ea060e86ae54862d gunicorn-registry stdout | 2025-09-26 08:36:53,126 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 619d922d8d2836c22acbe73d35f983b746af67ce9d39d94df16a580580f08dd4 gunicorn-registry stdout | 2025-09-26 08:36:53,126 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,126 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:53,126 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:53,144 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09?uploadId=68d650a5d73ec60008f9340d HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:36:53,144 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8v7r-4vhkl2-d1', 'x-amz-id-2': 'mg0l8v7r-4vhkl2-d1', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:53,144 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09"70d6dc6bca01a22f9e1c718312b59128-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09?uploadId=68d650a5d73ec60008f9340d' gunicorn-registry stdout | 2025-09-26 08:36:53,144 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,144 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,144 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:53,144 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,145 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8v7r-4vhkl2-d1', 'HostId': 'mg0l8v7r-4vhkl2-d1', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8v7r-4vhkl2-d1', 'x-amz-id-2': 'mg0l8v7r-4vhkl2-d1', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09?uploadId=68d650a5d73ec60008f9340d', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09', 'ETag': '"70d6dc6bca01a22f9e1c718312b59128-1"'} gunicorn-registry stdout | 2025-09-26 08:36:53,145 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:53,145 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:53,145 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 5642 bytes to blob c168cb94-a532-4a9f-b11f-48e2d51c7d3b took 0.09821367263793945 seconds gunicorn-registry stdout | 2025-09-26 08:36:53,146 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['c168cb94-a532-4a9f-b11f-48e2d51c7d3b', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,147 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'c168cb94-a532-4a9f-b11f-48e2d51c7d3b', 5642, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwYyI6dHJ1ZX19fTYwMjl9XV19fSwiaHR0cHM6Ly9tb2J5cHJvamVjdC5vcmcvYnVpbGRraXRAdjEjaGVybWV0aQoAAAAAAAAAALAAAAAAAAD9JF5rJe3jyt42h6cvuL3vdXsU9ODY+7fgmYfhYj2xJpRiLg==', 9, '{"chunks": [["uploads/a45f74e7-0a76-46f0-aafe-8da841594a09", 0, 5642]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 36, 52, 988437), None, None, 30]) gunicorn-registry stdout | 2025-09-26 08:36:53,149 [251] [DEBUG] [app] Ending request: urn:request:314b67b6-208e-4958-a0e9-2a60b7bd042e (/v2/testorg/alpine/blobs/uploads/c168cb94-a532-4a9f-b11f-48e2d51c7d3b) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:314b67b6-208e-4958-a0e9-2a60b7bd042e', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/c168cb94-a532-4a9f-b11f-48e2d51c7d3b', 'path': '/v2/testorg/alpine/blobs/uploads/c168cb94-a532-4a9f-b11f-48e2d51c7d3b', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:53,149 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:53,149 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:53,150 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:53 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/c168cb94-a532-4a9f-b11f-48e2d51c7d3b HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:53 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/c168cb94-a532-4a9f-b11f-48e2d51c7d3b HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.116 7415 0.114) gunicorn-registry stdout | 2025-09-26 08:36:53,192 [257] [DEBUG] [app] Starting request: urn:request:8a996bb6-a5cc-457c-8e2d-6ecd0a0cbe4f (/v2/testorg/alpine/blobs/uploads/c168cb94-a532-4a9f-b11f-48e2d51c7d3b) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:53,192 [257] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'c168cb94-a532-4a9f-b11f-48e2d51c7d3b', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:53,192 [257] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:53,192 [257] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:53,193 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."kid", "t1"."service", "t1"."jwk", "t1"."metadata", "t1"."created_date", "t1"."expiration_date", "t1"."rotation_duration", "t1"."approval_id" FROM "servicekey" AS "t1" LEFT OUTER JOIN "servicekeyapproval" AS "t2" ON ("t1"."approval_id" = "t2"."id") WHERE ((((NOT ("t1"."approval_id" IS %s) AND (("t1"."expiration_date" > %s) OR ("t1"."expiration_date" IS %s))) AND ("t1"."service" = %s)) AND (NOT (("t1"."service" = %s) AND ("t1"."expiration_date" <= %s)) OR NOT ((("t1"."service" = %s) AND ("t1"."approval_id" IS %s)) AND ("t1"."created_date" <= %s)))) AND (NOT ("t1"."expiration_date" <= %s) OR ("t1"."expiration_date" IS %s)))', [None, datetime.datetime(2025, 9, 26, 8, 36, 53, 192679), None, 'quay', 'quay', datetime.datetime(2025, 9, 26, 8, 36, 53, 192707), 'quay', None, datetime.datetime(2025, 9, 25, 8, 36, 53, 192730), datetime.datetime(2025, 9, 19, 8, 36, 53, 192745), None]) gunicorn-registry stdout | 2025-09-26 08:36:53,196 [257] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:53,196 [257] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:53,196 [257] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:53,196 [257] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:53,197 [257] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:53,197 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,198 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,200 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,201 [257] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,202 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,203 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,204 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,205 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:53,206 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['c168cb94-a532-4a9f-b11f-48e2d51c7d3b', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,208 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:53,208 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:53,209 [257] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/endpoints.json gunicorn-registry stdout | 2025-09-26 08:36:53,231 [257] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/sdk-default-configuration.json gunicorn-registry stdout | 2025-09-26 08:36:53,232 [257] [DEBUG] [botocore.hooks] Event choose-service-name: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,242 [257] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/s3/2006-03-01/service-2.json gunicorn-registry stdout | 2025-09-26 08:36:53,260 [257] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/s3/2006-03-01/endpoint-rule-set-1.json gunicorn-registry stdout | 2025-09-26 08:36:53,264 [257] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/partitions.json gunicorn-registry stdout | 2025-09-26 08:36:53,265 [257] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,265 [257] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler ._handler at 0x7fe1bb6fab60> gunicorn-registry stdout | 2025-09-26 08:36:53,306 [257] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,308 [257] [DEBUG] [botocore.endpoint] Setting s3 timeout as (60, 60) gunicorn-registry stdout | 2025-09-26 08:36:53,310 [257] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/_retry.json gunicorn-registry stdout | 2025-09-26 08:36:53,311 [257] [DEBUG] [botocore.client] Registering retry handlers for service: s3 gunicorn-registry stdout | 2025-09-26 08:36:53,311 [257] [DEBUG] [botocore.utils] Registering S3 region redirector handler gunicorn-registry stdout | 2025-09-26 08:36:53,322 [257] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/boto3/data/s3/2006-03-01/resources-1.json gunicorn-registry stdout | 2025-09-26 08:36:53,323 [257] [DEBUG] [botocore.hooks] Event choose-service-name: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,326 [257] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,326 [257] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler ._handler at 0x7fe1bb6fab60> gunicorn-registry stdout | 2025-09-26 08:36:53,326 [257] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,327 [257] [DEBUG] [botocore.endpoint] Setting s3 timeout as (60, 60) gunicorn-registry stdout | 2025-09-26 08:36:53,328 [257] [DEBUG] [botocore.client] Registering retry handlers for service: s3 gunicorn-registry stdout | 2025-09-26 08:36:53,328 [257] [DEBUG] [botocore.utils] Registering S3 region redirector handler gunicorn-registry stdout | 2025-09-26 08:36:53,329 [257] [DEBUG] [boto3.resources.factory] Loading s3:s3 gunicorn-registry stdout | 2025-09-26 08:36:53,330 [257] [DEBUG] [boto3.resources.factory] Loading s3:Bucket gunicorn-registry stdout | 2025-09-26 08:36:53,330 [257] [DEBUG] [boto3.resources.model] Renaming Bucket attribute name gunicorn-registry stdout | 2025-09-26 08:36:53,331 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Bucket: calling handler ._handler at 0x7fe1bb6fae80> gunicorn-registry stdout | 2025-09-26 08:36:53,331 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,331 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,331 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,331 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,331 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,331 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,332 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:53,332 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:53,332 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:53,332 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:53,333 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,333 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,333 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,333 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadBucket) with params: {'url_path': '', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:53,333 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadBucket: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,333 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadBucket: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,334 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,334 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,334 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:53,334 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083653Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:53,334 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083653Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 5ac8e96bd020b8e9502746a84b327de661bc3b0eda1c49d7ee653ea38615d56b gunicorn-registry stdout | 2025-09-26 08:36:53,334 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | c6951b0a885da7b4f0481089a6fd8f4e92f7b10ff65c52054f26bc92bae90971 gunicorn-registry stdout | 2025-09-26 08:36:53,334 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,334 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:53,335 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:53,336 [257] [DEBUG] [urllib3.connectionpool] Starting new HTTPS connection (1): s3.openshift-storage.svc.cluster.local:443 gunicorn-registry stdout | 2025-09-26 08:36:53,369 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:53,370 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8ve9-8qwcs8-n4d', 'x-amz-id-2': 'mg0l8ve9-8qwcs8-n4d', 'Date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:53,370 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:53,370 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,370 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:53,370 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadBucket: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,370 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:53,372 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:53,372 [257] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/cfaf3c96-dec8-49e8-a40b-5d60d4d1e210', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:53,373 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,373 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,373 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,373 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,373 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,373 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,373 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,373 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,373 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:53,374 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:53,374 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:53,374 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:53,374 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,374 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,374 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,374 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/cfaf3c96-dec8-49e8-a40b-5d60d4d1e210?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cfaf3c96-dec8-49e8-a40b-5d60d4d1e210', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cfaf3c96-dec8-49e8-a40b-5d60d4d1e210?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/cfaf3c96-dec8-49e8-a40b-5d60d4d1e210', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:53,374 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,375 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,375 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,375 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,375 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:53,375 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cfaf3c96-dec8-49e8-a40b-5d60d4d1e210 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083653Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:53,375 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083653Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 0302285cef1d8b72a7000a22fa478c8f1de4a924fa88a99a4ec499e1e4e74685 gunicorn-registry stdout | 2025-09-26 08:36:53,375 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 5cd797396b5cab0a4cebd11b18e8814ecfdc1e907d3a562b7ce8802fbaf1107b gunicorn-registry stdout | 2025-09-26 08:36:53,375 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,375 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:53,376 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:53,376 [257] [DEBUG] [urllib3.connectionpool] Starting new HTTPS connection (1): s3.openshift-storage.svc.cluster.local:443 gunicorn-registry stdout | 2025-09-26 08:36:53,404 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cfaf3c96-dec8-49e8-a40b-5d60d4d1e210?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:53,405 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8vfc-9dqjkc-10jb', 'x-amz-id-2': 'mg0l8vfc-9dqjkc-10jb', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:53,405 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/cfaf3c96-dec8-49e8-a40b-5d60d4d1e21068d650a5d73ec60008f93416' gunicorn-registry stdout | 2025-09-26 08:36:53,405 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,406 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:53,406 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,406 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8vfc-9dqjkc-10jb', 'HostId': 'mg0l8vfc-9dqjkc-10jb', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8vfc-9dqjkc-10jb', 'x-amz-id-2': 'mg0l8vfc-9dqjkc-10jb', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/cfaf3c96-dec8-49e8-a40b-5d60d4d1e210', 'UploadId': '68d650a5d73ec60008f93416'} gunicorn-registry stdout | 2025-09-26 08:36:53,406 [257] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:53,407 [257] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/cfaf3c96-dec8-49e8-a40b-5d60d4d1e210', 'UploadId': '68d650a5d73ec60008f93416'} gunicorn-registry stdout | 2025-09-26 08:36:53,407 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,407 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,407 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,407 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,407 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,407 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,407 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:53,407 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:53,407 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:53,407 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:53,408 [257] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,408 [257] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,408 [257] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,408 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/cfaf3c96-dec8-49e8-a40b-5d60d4d1e210', 'query_string': {'uploadId': '68d650a5d73ec60008f93416'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cfaf3c96-dec8-49e8-a40b-5d60d4d1e210', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cfaf3c96-dec8-49e8-a40b-5d60d4d1e210?uploadId=68d650a5d73ec60008f93416', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/cfaf3c96-dec8-49e8-a40b-5d60d4d1e210', 'UploadId': '68d650a5d73ec60008f93416'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:53,408 [257] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,408 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,408 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,408 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,409 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:53,409 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cfaf3c96-dec8-49e8-a40b-5d60d4d1e210 gunicorn-registry stdout | uploadId=68d650a5d73ec60008f93416 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083653Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:53,409 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083653Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | a252b8f5362606d9ce460b3094974b8bf40b9bf59e0dac2cff13195584aac524 gunicorn-registry stdout | 2025-09-26 08:36:53,409 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | c3b358c4b5a6dc7cbe1dcc74a0f46f3343bfc89db7897a7613e78d4def7ed93b gunicorn-registry stdout | 2025-09-26 08:36:53,409 [257] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,409 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:53,409 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:53,416 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/cfaf3c96-dec8-49e8-a40b-5d60d4d1e210?uploadId=68d650a5d73ec60008f93416 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:36:53,416 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8vfm-9k5b90-1b5y', 'x-amz-id-2': 'mg0l8vfm-9k5b90-1b5y', 'Date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:53,416 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:53,416 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,416 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:53,416 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,417 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8vfm-9k5b90-1b5y', 'HostId': 'mg0l8vfm-9k5b90-1b5y', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8vfm-9k5b90-1b5y', 'x-amz-id-2': 'mg0l8vfm-9k5b90-1b5y', 'date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:36:53,417 [257] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob c168cb94-a532-4a9f-b11f-48e2d51c7d3b took 0.20898771286010742 seconds gunicorn-registry stdout | 2025-09-26 08:36:53,417 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['c168cb94-a532-4a9f-b11f-48e2d51c7d3b', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,419 [257] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'c168cb94-a532-4a9f-b11f-48e2d51c7d3b', 5642, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwYyI6dHJ1ZX19fTYwMjl9XV19fSwiaHR0cHM6Ly9tb2J5cHJvamVjdC5vcmcvYnVpbGRraXRAdjEjaGVybWV0aQoAAAAAAAAAALAAAAAAAAD9JF5rJe3jyt42h6cvuL3vdXsU9ODY+7fgmYfhYj2xJpRiLg==', 9, '{"chunks": [["uploads/a45f74e7-0a76-46f0-aafe-8da841594a09", 0, 5642]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 36, 52, 988437), None, None, 30]) gunicorn-registry stdout | 2025-09-26 08:36:53,421 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:53,421 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:53,421 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:53,422 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:53,422 [257] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/4d/4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e'} gunicorn-registry stdout | 2025-09-26 08:36:53,422 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,422 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,422 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,423 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,423 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,423 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,423 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,423 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:53,423 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:53,423 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:53,423 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:53,423 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,423 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,423 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,423 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/4d/4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/4d/4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:53,424 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,424 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,424 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,424 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,424 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:53,424 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083653Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:53,424 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083653Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 7f6eed04dbcd5f265b91036c50cff66a659a462a3937bac9c1986484b0a9151b gunicorn-registry stdout | 2025-09-26 08:36:53,424 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 5eca7af6e05a004f61bcd48df47fefa29271bcac685cb348b899d69450c65922 gunicorn-registry stdout | 2025-09-26 08:36:53,424 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,424 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:53,425 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:53,429 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:36:53,429 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8vg2-9t715c-wy1', 'x-amz-id-2': 'mg0l8vg2-9t715c-wy1', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:53,429 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:53,431 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,431 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:53,431 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,431 [257] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:36:53,431 [257] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:36:53,431 [257] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/4d/4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e gunicorn-registry stdout | 2025-09-26 08:36:53,432 [257] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:53,432 [257] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:53,432 [257] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:53,432 [257] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:36:53,432 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,433 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,433 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,433 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,433 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,433 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,433 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,433 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:53,433 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:53,433 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:53,433 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:53,433 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,434 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,434 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,434 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:53,434 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,434 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,434 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,434 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,435 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,435 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:53,435 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083653Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:53,435 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083653Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | fbc750320a3e82bf8d78ca930829a6f6b64bffcbd2a07537e1e464043a2b0315 gunicorn-registry stdout | 2025-09-26 08:36:53,435 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 0b576d2a15a27eda67b97968e032e30c6d86886a6a1630df3294873a30157f3c gunicorn-registry stdout | 2025-09-26 08:36:53,435 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,435 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,435 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:53,435 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:53,439 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:53,440 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8vgc-9ziru5-164y', 'x-amz-id-2': 'mg0l8vgc-9ziru5-164y', 'ETag': '"70d6dc6bca01a22f9e1c718312b59128-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:53 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '5642', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:53,440 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:53,441 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,441 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:53,441 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,441 [257] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/4d/4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:36:53,441 [257] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:53,441 [257] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/4d/4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:53,441 [257] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/4d/4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:53,441 [257] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/4d/4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/4d/4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e', 'extra_args': {}, 'callbacks': [], 'size': 5642} gunicorn-registry stdout | 2025-09-26 08:36:53,442 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,442 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,442 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,442 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,442 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,442 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,442 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,442 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,442 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,442 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,443 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:53,443 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:53,443 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:53,443 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:53,443 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,443 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,443 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,444 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/4d/4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/4d/4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:53,444 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,444 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,444 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,444 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,444 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,444 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:53,444 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a45f74e7-0a76-46f0-aafe-8da841594a09 gunicorn-registry stdout | x-amz-date:20250926T083653Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:53,444 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083653Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | fec69f7243a2e215060f83e282c2566adba147e4136d2d6b19ab6d2de251ce58 gunicorn-registry stdout | 2025-09-26 08:36:53,444 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | da56c05a7e3cf2cd9698335a2c25042d278c7adaea16f142c91a1cf7715ec6d7 gunicorn-registry stdout | 2025-09-26 08:36:53,444 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,444 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,444 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:53,445 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:53,445 [257] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:53,471 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:36:53,471 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8vgm-a57yzt-g4e', 'x-amz-id-2': 'mg0l8vgm-a57yzt-g4e', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:53,471 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:36:53.000Z"70d6dc6bca01a22f9e1c718312b59128-1"' gunicorn-registry stdout | 2025-09-26 08:36:53,472 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,472 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,472 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:53,472 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,472 [257] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:53,472 [257] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob c168cb94-a532-4a9f-b11f-48e2d51c7d3b with digest sha256:4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e took 0.0411837100982666 seconds gunicorn-registry stdout | 2025-09-26 08:36:53,473 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['c168cb94-a532-4a9f-b11f-48e2d51c7d3b', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,474 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "imagestoragelocation" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:53,475 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,476 [257] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['2db7ce58-da0f-4385-87e4-884a5fa31014', 5642, None, True, True, 'sha256:4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e']) gunicorn-registry stdout | 2025-09-26 08:36:53,477 [257] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [31, 9]) gunicorn-registry stdout | 2025-09-26 08:36:53,478 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,478 [257] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [2, 31, datetime.datetime(2025, 9, 26, 8, 36, 53, 478497), datetime.datetime(2025, 9, 26, 9, 36, 53, 478482)]) gunicorn-registry stdout | 2025-09-26 08:36:53,479 [257] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [30]) gunicorn-registry stdout | 2025-09-26 08:36:53,481 [257] [DEBUG] [app] Ending request: urn:request:8a996bb6-a5cc-457c-8e2d-6ecd0a0cbe4f (/v2/testorg/alpine/blobs/uploads/c168cb94-a532-4a9f-b11f-48e2d51c7d3b) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:8a996bb6-a5cc-457c-8e2d-6ecd0a0cbe4f', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/c168cb94-a532-4a9f-b11f-48e2d51c7d3b?digest=sha256:4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e', 'path': '/v2/testorg/alpine/blobs/uploads/c168cb94-a532-4a9f-b11f-48e2d51c7d3b', 'parameters': {'digest': 'sha256:4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:53,481 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:53,482 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:53 +0000] "PUT /v2/testorg/alpine/blobs/uploads/c168cb94-a532-4a9f-b11f-48e2d51c7d3b?digest=sha256%3A4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.291 1849 0.292) gunicorn-registry stdout | 2025-09-26 08:36:53,482 [257] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:53 +0000] "PUT /v2/testorg/alpine/blobs/uploads/c168cb94-a532-4a9f-b11f-48e2d51c7d3b?digest=sha256%3A4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e HTTP/1.1" 201 0 "-" "skopeo/1.14.5" gunicorn-registry stdout | 2025-09-26 08:36:53,637 [251] [DEBUG] [app] Starting request: urn:request:12ef0ddd-71c5-45d3-8bc9-3a4942bf5aca (/v2/testorg/alpine/blobs/sha256:761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:53,637 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:53,637 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:53,637 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:53,638 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:53,638 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:53,638 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:53,638 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:53,638 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:53,639 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,641 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,642 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:53,642 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095_2 gunicorn-registry stdout | 2025-09-26 08:36:53,642 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:53,644 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,645 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,647 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,648 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,649 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,650 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095_2: None gunicorn-registry stdout | 2025-09-26 08:36:53,650 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095_2: None gunicorn-registry stdout | 2025-09-26 08:36:53,650 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:53,650 [251] [DEBUG] [app] Ending request: urn:request:12ef0ddd-71c5-45d3-8bc9-3a4942bf5aca (/v2/testorg/alpine/blobs/sha256:761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:12ef0ddd-71c5-45d3-8bc9-3a4942bf5aca', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095', 'path': '/v2/testorg/alpine/blobs/sha256:761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:53,650 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:53,650 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:53,650 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:53 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:53 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.014 1714 0.014) gunicorn-registry stdout | 2025-09-26 08:36:53,692 [251] [DEBUG] [app] Starting request: urn:request:eb7fb607-dcbe-4f94-b908-1942e9ee7582 (/v2/testorg/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:53,692 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:53,692 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:53,692 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:53,693 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:53,693 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:53,694 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:53,694 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:53,694 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:53,694 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,695 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,696 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,698 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,698 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,699 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,700 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:53,701 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,702 [251] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [2, 'e795b695-5ccb-432d-ac35-f53992a5c459', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 36, 53, 702152)]) gunicorn-registry stdout | 2025-09-26 08:36:53,704 [251] [DEBUG] [app] Ending request: urn:request:eb7fb607-dcbe-4f94-b908-1942e9ee7582 (/v2/testorg/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:eb7fb607-dcbe-4f94-b908-1942e9ee7582', 'remote_addr': '10.131.2.20', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/', 'path': '/v2/testorg/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:53,704 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:53,704 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:53,704 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:53 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:53 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.013 1693 0.013) gunicorn-registry stdout | 2025-09-26 08:36:53,746 [251] [DEBUG] [app] Starting request: urn:request:b2f5c118-5e6c-4de0-b72b-d39dcf426f27 (/v2/testorg/alpine/blobs/uploads/e795b695-5ccb-432d-ac35-f53992a5c459) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:53,746 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'e795b695-5ccb-432d-ac35-f53992a5c459', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:53,746 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:53,746 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:53,747 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:53,747 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:53,747 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:53,747 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:53,747 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:53,748 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,750 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,751 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,751 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,752 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,753 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,754 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,755 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:53,756 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['e795b695-5ccb-432d-ac35-f53992a5c459', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,757 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:53,757 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:53,757 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:53,757 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:53,758 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:53,758 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,758 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,758 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,758 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,758 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,758 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,758 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,758 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,758 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:53,758 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:53,758 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:53,758 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:53,758 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,758 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,758 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,758 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:53,758 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,758 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,758 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,759 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,759 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:53,759 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083653Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:53,759 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083653Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | b9831b31e18947e7b817b0032f9076bcf7bd1ed31ab6266a7fc8442142c4863a gunicorn-registry stdout | 2025-09-26 08:36:53,759 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | ed30cbfc3bb9e8ad920b3ec42a7504f26019acf25e427de371511fa284f9e0e9 gunicorn-registry stdout | 2025-09-26 08:36:53,759 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,759 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:53,759 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:53,765 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:53,766 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8vpd-fcryaa-b6l', 'x-amz-id-2': 'mg0l8vpd-fcryaa-b6l', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:53,766 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b0968d650a5d73ec60008f93419' gunicorn-registry stdout | 2025-09-26 08:36:53,766 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,766 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:53,766 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,766 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8vpd-fcryaa-b6l', 'HostId': 'mg0l8vpd-fcryaa-b6l', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8vpd-fcryaa-b6l', 'x-amz-id-2': 'mg0l8vpd-fcryaa-b6l', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09', 'UploadId': '68d650a5d73ec60008f93419'} gunicorn-registry stdout | 2025-09-26 08:36:53,766 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:53,767 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:36:53,767 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:36:53,767 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09', 'UploadId': '68d650a5d73ec60008f93419', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b894ef70>, 'ContentLength': 241} gunicorn-registry stdout | 2025-09-26 08:36:53,767 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,767 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,767 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,767 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,767 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,767 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,767 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,767 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,767 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:53,767 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:53,767 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:53,767 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:53,768 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,768 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,768 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:36:53,768 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,768 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,768 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09', 'query_string': {'uploadId': '68d650a5d73ec60008f93419', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '241', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'RnBCPwKnsruZG6oiDJm1hg==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b894ef70>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09?uploadId=68d650a5d73ec60008f93419&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09', 'UploadId': '68d650a5d73ec60008f93419', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b894ef70>, 'ContentLength': 241}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:53,768 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,768 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,768 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,768 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,768 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:53,768 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09 gunicorn-registry stdout | partNumber=1&uploadId=68d650a5d73ec60008f93419 gunicorn-registry stdout | content-length:241 gunicorn-registry stdout | content-md5:RnBCPwKnsruZG6oiDJm1hg== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083653Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:53,768 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083653Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 7036866e05b98488a0487223f3655d924b37ff013d66ee49dbd18f50dc4c46c8 gunicorn-registry stdout | 2025-09-26 08:36:53,768 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | b30de37d268e3cbb2d4db96033ec17e90d9ab6f3757dfac8dd08eba4c47bf856 gunicorn-registry stdout | 2025-09-26 08:36:53,768 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,768 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:53,769 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:53,770 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:53,771 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:36:53,847 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09?uploadId=68d650a5d73ec60008f93419&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:53,847 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8vpm-fij793-8df', 'x-amz-id-2': 'mg0l8vpm-fij793-8df', 'ETag': '"4670423f02a7b2bb991baa220c99b586"', 'Date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:36:53,847 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:53,848 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,848 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:53,848 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,848 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8vpm-fij793-8df', 'HostId': 'mg0l8vpm-fij793-8df', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8vpm-fij793-8df', 'x-amz-id-2': 'mg0l8vpm-fij793-8df', 'etag': '"4670423f02a7b2bb991baa220c99b586"', 'date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"4670423f02a7b2bb991baa220c99b586"'} gunicorn-registry stdout | 2025-09-26 08:36:53,848 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09', 'UploadId': '68d650a5d73ec60008f93419', 'MultipartUpload': {'Parts': [{'ETag': '"4670423f02a7b2bb991baa220c99b586"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:36:53,848 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,848 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,848 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,848 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,848 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,848 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,848 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,848 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:53,848 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:53,848 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:53,848 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:53,849 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,849 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,849 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,849 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09', 'query_string': {'uploadId': '68d650a5d73ec60008f93419'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"4670423f02a7b2bb991baa220c99b586"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09?uploadId=68d650a5d73ec60008f93419', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09', 'UploadId': '68d650a5d73ec60008f93419', 'MultipartUpload': {'Parts': [{'ETag': '"4670423f02a7b2bb991baa220c99b586"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:53,849 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,849 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,849 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,849 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,849 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:53,849 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09 gunicorn-registry stdout | uploadId=68d650a5d73ec60008f93419 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:d6c1fd62ff69190a91e4006edde03eb02fdabf604f86d9d08358259f9601c8ff gunicorn-registry stdout | x-amz-date:20250926T083653Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | d6c1fd62ff69190a91e4006edde03eb02fdabf604f86d9d08358259f9601c8ff gunicorn-registry stdout | 2025-09-26 08:36:53,849 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083653Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | fa8591a495dd663ba0a318ab7a0607a36ec748c601aa2966fde3e659cabe219b gunicorn-registry stdout | 2025-09-26 08:36:53,849 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 4dccb9e41ef74e5488379aacd630bbb7222473a5e43b8ca428f6bef5219cb714 gunicorn-registry stdout | 2025-09-26 08:36:53,849 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,849 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:53,850 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:53,866 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09?uploadId=68d650a5d73ec60008f93419 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:36:53,866 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8vrv-b2p16-rnp', 'x-amz-id-2': 'mg0l8vrv-b2p16-rnp', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:53,866 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09"61a75d0e757232a88592a29f55d878e0-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09?uploadId=68d650a5d73ec60008f93419' gunicorn-registry stdout | 2025-09-26 08:36:53,867 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,867 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:53,867 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:53,867 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:53,867 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8vrv-b2p16-rnp', 'HostId': 'mg0l8vrv-b2p16-rnp', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8vrv-b2p16-rnp', 'x-amz-id-2': 'mg0l8vrv-b2p16-rnp', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:36:53 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09?uploadId=68d650a5d73ec60008f93419', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09', 'ETag': '"61a75d0e757232a88592a29f55d878e0-1"'} gunicorn-registry stdout | 2025-09-26 08:36:53,867 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:53,868 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:53,868 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 241 bytes to blob e795b695-5ccb-432d-ac35-f53992a5c459 took 0.11139273643493652 seconds gunicorn-registry stdout | 2025-09-26 08:36:53,869 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['e795b695-5ccb-432d-ac35-f53992a5c459', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:53,870 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'e795b695-5ccb-432d-ac35-f53992a5c459', 241, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwZWE2YTMyMTc3MDJkOTQ3NGU3ZTUxY2U0MTcyYzUyNDhiMTcxODk5YmU4MjZlIl19fTk1NDNkNjQ4MDI2MTllNTEAAAAAAAAAAAYAAAAAAAAndcA32NvvTEZYGIinIogep5RNJxKgxeiwlWOADLIY/JRiLg==', 9, '{"chunks": [["uploads/b74aac11-3e08-4a8b-b6c2-5ceb165c0b09", 0, 241]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 36, 53, 702152), None, None, 31]) gunicorn-registry stdout | 2025-09-26 08:36:53,872 [251] [DEBUG] [app] Ending request: urn:request:b2f5c118-5e6c-4de0-b72b-d39dcf426f27 (/v2/testorg/alpine/blobs/uploads/e795b695-5ccb-432d-ac35-f53992a5c459) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:b2f5c118-5e6c-4de0-b72b-d39dcf426f27', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/e795b695-5ccb-432d-ac35-f53992a5c459', 'path': '/v2/testorg/alpine/blobs/uploads/e795b695-5ccb-432d-ac35-f53992a5c459', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:53,872 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:53,872 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:53,873 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:53 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/e795b695-5ccb-432d-ac35-f53992a5c459 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:53 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/e795b695-5ccb-432d-ac35-f53992a5c459 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.129 2013 0.128) gunicorn-registry stdout | 2025-09-26 08:36:54,116 [255] [DEBUG] [app] Starting request: urn:request:8d3c5cb7-a6e0-4160-9699-8301091728ca (/v2/testorg/alpine/manifests/sha256:c14851cd48d13b30981b7513c11e72f2cd7a90217efbce4d48233b5cfe23182f) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:54,116 [255] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'manifest_ref': 'sha256:c14851cd48d13b30981b7513c11e72f2cd7a90217efbce4d48233b5cfe23182f', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:54,116 [255] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:54,116 [255] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:54,117 [255] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:54,117 [255] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:54,117 [255] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:54,118 [255] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:54,118 [255] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:54,119 [255] [DEBUG] [data.cache.cache_key] Loading repository lookup from cache_key: repository_lookup_testorg_alpine gunicorn-registry stdout | 2025-09-26 08:36:54,119 [255] [DEBUG] [data.cache.impl] Checking cache for key repository_lookup_testorg_alpine gunicorn-registry stdout | 2025-09-26 08:36:54,120 [255] [DEBUG] [data.cache.impl] Found result in cache for key repository_lookup_testorg_alpine: {'id': 2, 'visibility': {'id': 2, 'name': 'private'}, 'kind': {'id': 1, 'name': 'image'}, 'state': 0, 'namespace_user': {'stripe_id': None}} gunicorn-registry stdout | 2025-09-26 08:36:54,121 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:c14851cd48d13b30981b7513c11e72f2cd7a90217efbce4d48233b5cfe23182f', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,124 [255] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL ((SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "uploadedblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1") UNION ALL (SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "uploadedblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q2"))', [2, 'sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac', 1, 2, 'sha256:761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095', 1, 2, 'sha256:4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e', 1]) gunicorn-registry stdout | 2025-09-26 08:36:54,125 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."digest" = %s) AND ("t1"."repository_id" = %s)) LIMIT %s OFFSET %s', ['sha256:c14851cd48d13b30981b7513c11e72f2cd7a90217efbce4d48233b5cfe23182f', 2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,126 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "mediatype" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:54,128 [255] [DEBUG] [peewee] ('INSERT INTO "manifest" ("repository_id", "digest", "media_type_id", "manifest_bytes", "config_media_type", "layers_compressed_size", "subject", "subject_backfilled", "artifact_type", "artifact_type_backfilled") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifest"."id"', [2, 'sha256:c14851cd48d13b30981b7513c11e72f2cd7a90217efbce4d48233b5cfe23182f', 18, '{\n "schemaVersion": 2,\n "mediaType": "application/vnd.oci.image.manifest.v1+json",\n "config": {\n "mediaType": "application/vnd.oci.image.config.v1+json",\n "digest": "sha256:761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095",\n "size": 241\n },\n "layers": [\n {\n "mediaType": "application/vnd.in-toto+json",\n "digest": "sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac",\n "size": 80931,\n "annotations": {\n "in-toto.io/predicate-type": "https://spdx.dev/Document"\n }\n },\n {\n "mediaType": "application/vnd.in-toto+json",\n "digest": "sha256:4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e",\n "size": 5642,\n "annotations": {\n "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2"\n }\n }\n ]\n}', 'application/vnd.oci.image.config.v1+json', 86573, None, True, None, True]) gunicorn-registry stdout | 2025-09-26 08:36:54,128 [255] [DEBUG] [peewee] ('INSERT INTO "manifestblob" ("repository_id", "manifest_id", "blob_id") VALUES (%s, %s, %s), (%s, %s, %s), (%s, %s, %s) RETURNING "manifestblob"."id"', [2, 11, 32, 2, 11, 30, 2, 11, 31]) gunicorn-registry stdout | 2025-09-26 08:36:54,129 [255] [DEBUG] [peewee] ('SELECT "t1"."namespace_user_id" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,130 [255] [DEBUG] [peewee] ('SELECT 1 FROM "user" AS "t1" WHERE ((("t1"."id" = %s) AND "t1"."enabled") AND NOT "t1"."robot") LIMIT %s', [3, 1]) gunicorn-registry stdout | 2025-09-26 08:36:54,131 [255] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [3, 30, 11, 1]) gunicorn-registry stdout | 2025-09-26 08:36:54,133 [255] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [3, 32, 11, 1]) gunicorn-registry stdout | 2025-09-26 08:36:54,133 [255] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [3, 31, 11, 1]) gunicorn-registry stdout | 2025-09-26 08:36:54,134 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,134 [255] [INFO] [data.model.quota] updating namespace size for manifest 11 in namespace 3, QuotaOperation.ADD 86814 gunicorn-registry stdout | 2025-09-26 08:36:54,135 [255] [DEBUG] [peewee] ('UPDATE "quotanamespacesize" SET "size_bytes" = ("quotanamespacesize"."size_bytes" + %s) WHERE ("quotanamespacesize"."namespace_user_id" = %s)', [86814, 3]) gunicorn-registry stdout | 2025-09-26 08:36:54,135 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotarepositorysize" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,136 [255] [INFO] [data.model.quota] updating repository size for manifest 11 in repository 2, QuotaOperation.ADD 86814 gunicorn-registry stdout | 2025-09-26 08:36:54,136 [255] [DEBUG] [peewee] ('UPDATE "quotarepositorysize" SET "size_bytes" = ("quotarepositorysize"."size_bytes" + %s) WHERE ("quotarepositorysize"."repository_id" = %s)', [86814, 2]) gunicorn-registry stdout | 2025-09-26 08:36:54,136 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [11, None, 1758879414136, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,139 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "tagkind" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:54,139 [255] [DEBUG] [peewee] ('INSERT INTO "tag" ("name", "repository_id", "manifest_id", "lifetime_start_ms", "lifetime_end_ms", "immutable", "hidden", "reversion", "tag_kind_id") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "tag"."id"', ['$temp-1ee90b1d-3df1-40c5-924a-b95bc43052a9', 2, 11, 1758875814136, 1758879414136, False, True, False, 1]) gunicorn-registry stdout | 2025-09-26 08:36:54,141 [255] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,142 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['32b931e7-3228-4baf-a680-adbd7c5f93c2']) gunicorn-registry stdout | 2025-09-26 08:36:54,144 [255] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:54,145 [255] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:54,145 [255] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/76/761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095'} gunicorn-registry stdout | 2025-09-26 08:36:54,145 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,145 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,145 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,145 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:54,145 [255] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,146 [255] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,146 [255] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:54,146 [255] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:54,146 [255] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:54,146 [255] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:54,146 [255] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:54,146 [255] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,146 [255] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,146 [255] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,146 [255] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/76/761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/76/761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/76/761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/76/761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:54,147 [255] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:54,147 [255] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:54,147 [255] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,147 [255] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,147 [255] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:54,147 [255] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/76/761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083654Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:54,147 [255] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083654Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 883e72c7ec629fb94fc1951d4e07e1de9e164545ae4a110d927e2fc1fc9d0353 gunicorn-registry stdout | 2025-09-26 08:36:54,147 [255] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | d04da65e53ba45fa919093559107325d52da032defa0e5303433a6fdbbfffd32 gunicorn-registry stdout | 2025-09-26 08:36:54,147 [255] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,147 [255] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:54,148 [255] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:54,194 [255] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/76/761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095 HTTP/1.1" 200 241 gunicorn-registry stdout | 2025-09-26 08:36:54,194 [255] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8w05-58f3es-175b', 'x-amz-id-2': 'mg0l8w05-58f3es-175b', 'ETag': '"61a75d0e757232a88592a29f55d878e0-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:54 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:54 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:54,194 [255] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:36:54,194 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,194 [255] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:54,195 [255] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:54,195 [255] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8w05-58f3es-175b', 'HostId': 'mg0l8w05-58f3es-175b', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8w05-58f3es-175b', 'x-amz-id-2': 'mg0l8w05-58f3es-175b', 'etag': '"61a75d0e757232a88592a29f55d878e0-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:54 GMT', 'content-type': 'application/octet-stream', 'content-length': '241', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:36:54 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 54, tzinfo=tzutc()), 'ContentLength': 241, 'ETag': '"61a75d0e757232a88592a29f55d878e0-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:36:54,196 [255] [DEBUG] [app] Ending request: urn:request:8d3c5cb7-a6e0-4160-9699-8301091728ca (/v2/testorg/alpine/manifests/sha256:c14851cd48d13b30981b7513c11e72f2cd7a90217efbce4d48233b5cfe23182f) {'endpoint': 'v2.write_manifest_by_digest', 'request_id': 'urn:request:8d3c5cb7-a6e0-4160-9699-8301091728ca', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/manifests/sha256:c14851cd48d13b30981b7513c11e72f2cd7a90217efbce4d48233b5cfe23182f', 'path': '/v2/testorg/alpine/manifests/sha256:c14851cd48d13b30981b7513c11e72f2cd7a90217efbce4d48233b5cfe23182f', 'parameters': {}, 'json_body': {'schemaVersion': 2, 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'config': {'mediaType': 'application/vnd.oci.image.config.v1+json', 'digest': 'sha256:761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095', 'size': 241}, 'layers': [{'mediaType': 'application/vnd.in-toto+json', 'digest': 'sha256:b1c2aed2f4fbd5edc68212bb46bacd85cabf9ebec62b30efec7b7657f0213eac', 'size': 80931, 'annotations': {'in-toto.io/predicate-type': 'https://spdx.dev/Document'}}, {'mediaType': 'application/vnd.in-toto+json', 'digest': 'sha256:4d369543d64802619e5ea6a3217702d9474e7e51ce4172c5248b171899be826e', 'size': 5642, 'annotations': {'in-toto.io/predicate-type': 'https://slsa.dev/provenance/v0.2'}}]}, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:54,197 [255] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:54,197 [255] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:54,197 [255] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:54 +0000] "PUT /v2/testorg/alpine/manifests/sha256:c14851cd48d13b30981b7513c11e72f2cd7a90217efbce4d48233b5cfe23182f HTTP/1.1" 201 2 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:54 +0000] "PUT /v2/testorg/alpine/manifests/sha256:c14851cd48d13b30981b7513c11e72f2cd7a90217efbce4d48233b5cfe23182f HTTP/1.1" 201 2 "-" "skopeo/1.14.5" (0.082 2657 0.082) gunicorn-registry stdout | 2025-09-26 08:36:54,467 [251] [DEBUG] [app] Starting request: urn:request:a1036c4f-1a1d-48fd-a298-a34f9e8250b9 (/v2/testorg/alpine/blobs/sha256:33a2433d89df7e794d1655fce70d7031d8065c9798bdc2931f7c98fcc8d310d0) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:54,467 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:33a2433d89df7e794d1655fce70d7031d8065c9798bdc2931f7c98fcc8d310d0', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:54,467 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:54,467 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:54,468 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:54,468 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:54,468 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:54,468 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:54,468 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:54,469 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,470 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,471 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:54,471 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:33a2433d89df7e794d1655fce70d7031d8065c9798bdc2931f7c98fcc8d310d0_2 gunicorn-registry stdout | 2025-09-26 08:36:54,472 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:33a2433d89df7e794d1655fce70d7031d8065c9798bdc2931f7c98fcc8d310d0_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:54,472 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,474 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,474 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,476 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:33a2433d89df7e794d1655fce70d7031d8065c9798bdc2931f7c98fcc8d310d0', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,477 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:33a2433d89df7e794d1655fce70d7031d8065c9798bdc2931f7c98fcc8d310d0', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,478 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:33a2433d89df7e794d1655fce70d7031d8065c9798bdc2931f7c98fcc8d310d0_2: None gunicorn-registry stdout | 2025-09-26 08:36:54,478 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:33a2433d89df7e794d1655fce70d7031d8065c9798bdc2931f7c98fcc8d310d0_2: None gunicorn-registry stdout | 2025-09-26 08:36:54,478 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:54,479 [251] [DEBUG] [app] Ending request: urn:request:a1036c4f-1a1d-48fd-a298-a34f9e8250b9 (/v2/testorg/alpine/blobs/sha256:33a2433d89df7e794d1655fce70d7031d8065c9798bdc2931f7c98fcc8d310d0) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:a1036c4f-1a1d-48fd-a298-a34f9e8250b9', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:33a2433d89df7e794d1655fce70d7031d8065c9798bdc2931f7c98fcc8d310d0', 'path': '/v2/testorg/alpine/blobs/sha256:33a2433d89df7e794d1655fce70d7031d8065c9798bdc2931f7c98fcc8d310d0', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:54,479 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:54,479 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:54,479 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:54 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:33a2433d89df7e794d1655fce70d7031d8065c9798bdc2931f7c98fcc8d310d0 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:54 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:33a2433d89df7e794d1655fce70d7031d8065c9798bdc2931f7c98fcc8d310d0 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.013 1714 0.013) gunicorn-registry stdout | 2025-09-26 08:36:54,773 [251] [DEBUG] [app] Starting request: urn:request:76b0ba8a-021d-43bc-ae38-2a0ae20520d1 (/v2/testorg/alpine/blobs/uploads/cf3647dc-78f9-4894-b015-7972a8f8ed61) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:54,773 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'cf3647dc-78f9-4894-b015-7972a8f8ed61', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:54,773 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:54,773 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:54,774 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:54,774 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:54,774 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:54,775 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:54,775 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:54,775 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,777 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,777 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,778 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,779 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,780 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,781 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,782 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:54,783 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['cf3647dc-78f9-4894-b015-7972a8f8ed61', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:54,783 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:54,783 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:54,783 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:54,784 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:54,785 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:54,785 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,785 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,785 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,785 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,785 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:54,785 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,785 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,785 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:54,785 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:54,785 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:54,785 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:54,785 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:54,785 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,785 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,785 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,785 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:54,785 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:54,785 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:54,786 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,786 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,786 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:54,786 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083654Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:54,786 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083654Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 5f249f179ed78b95b93d204f232986eb4cffde65cf7f99a201bd6428b94b766d gunicorn-registry stdout | 2025-09-26 08:36:54,786 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 27352d174aa37264f66f2f327176c6292bb5e35a57e3a967da93f79fb9ff0430 gunicorn-registry stdout | 2025-09-26 08:36:54,786 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,786 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:54,786 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:54,796 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:54,797 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8whw-ft5zue-wzw', 'x-amz-id-2': 'mg0l8whw-ft5zue-wzw', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:54 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:54,797 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a68d650a6d73ec60008f93423' gunicorn-registry stdout | 2025-09-26 08:36:54,797 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:54,797 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:54,797 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:54,797 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8whw-ft5zue-wzw', 'HostId': 'mg0l8whw-ft5zue-wzw', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8whw-ft5zue-wzw', 'x-amz-id-2': 'mg0l8whw-ft5zue-wzw', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:54 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a', 'UploadId': '68d650a6d73ec60008f93423'} gunicorn-registry stdout | 2025-09-26 08:36:54,797 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:55,090 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:36:55,091 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:36:55,091 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a', 'UploadId': '68d650a6d73ec60008f93423', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b894f1f0>, 'ContentLength': 3730187} gunicorn-registry stdout | 2025-09-26 08:36:55,091 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,091 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,091 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,091 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,091 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:55,091 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,091 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,091 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:55,091 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:55,091 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:55,091 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:55,091 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:55,092 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,099 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,099 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:36:55,099 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,099 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,099 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a', 'query_string': {'uploadId': '68d650a6d73ec60008f93423', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '3730187', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': '3ktOyB5P0RyfPYFNZ6RspA==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b894f1f0>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a?uploadId=68d650a6d73ec60008f93423&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a', 'UploadId': '68d650a6d73ec60008f93423', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b894f1f0>, 'ContentLength': 3730187}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:55,099 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:55,099 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:55,099 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,099 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,100 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:55,100 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a gunicorn-registry stdout | partNumber=1&uploadId=68d650a6d73ec60008f93423 gunicorn-registry stdout | content-length:3730187 gunicorn-registry stdout | content-md5:3ktOyB5P0RyfPYFNZ6RspA== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083655Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:55,100 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083655Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | a2e32ab2ceae5d349476ad74b665cbc6eab2176261a6cc5f0febd14a45875334 gunicorn-registry stdout | 2025-09-26 08:36:55,100 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | a0c4c0648ed3be9f3a492f22fa90606291371fc04b9b2e03690da71cad352a60 gunicorn-registry stdout | 2025-09-26 08:36:55,100 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,100 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:55,100 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:55,101 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:55,103 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. globalpromstats stdout | 2025-09-26 08:36:55,117 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} gunicorn-registry stdout | 2025-09-26 08:36:55,348 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a?uploadId=68d650a6d73ec60008f93423&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:55,348 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8wql-4g77jr-ovv', 'x-amz-id-2': 'mg0l8wql-4g77jr-ovv', 'ETag': '"de4b4ec81e4fd11c9f3d814d67a46ca4"', 'Date': 'Fri, 26 Sep 2025 08:36:55 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:36:55,348 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:55,348 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,348 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:55,348 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:55,349 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8wql-4g77jr-ovv', 'HostId': 'mg0l8wql-4g77jr-ovv', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8wql-4g77jr-ovv', 'x-amz-id-2': 'mg0l8wql-4g77jr-ovv', 'etag': '"de4b4ec81e4fd11c9f3d814d67a46ca4"', 'date': 'Fri, 26 Sep 2025 08:36:55 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"de4b4ec81e4fd11c9f3d814d67a46ca4"'} gunicorn-registry stdout | 2025-09-26 08:36:55,349 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a', 'UploadId': '68d650a6d73ec60008f93423', 'MultipartUpload': {'Parts': [{'ETag': '"de4b4ec81e4fd11c9f3d814d67a46ca4"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:36:55,349 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,349 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,349 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,349 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:55,349 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,349 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,349 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:55,349 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:55,349 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:55,349 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:55,349 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:55,350 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,350 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,350 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,350 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a', 'query_string': {'uploadId': '68d650a6d73ec60008f93423'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"de4b4ec81e4fd11c9f3d814d67a46ca4"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a?uploadId=68d650a6d73ec60008f93423', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a', 'UploadId': '68d650a6d73ec60008f93423', 'MultipartUpload': {'Parts': [{'ETag': '"de4b4ec81e4fd11c9f3d814d67a46ca4"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:55,350 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:55,350 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:55,350 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,350 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,350 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:55,350 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a gunicorn-registry stdout | uploadId=68d650a6d73ec60008f93423 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:0f795d2ab0acee7e4e830c6f5d9d736caca31ba5b7df5d5ee04eb50678f1aa89 gunicorn-registry stdout | x-amz-date:20250926T083655Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 0f795d2ab0acee7e4e830c6f5d9d736caca31ba5b7df5d5ee04eb50678f1aa89 gunicorn-registry stdout | 2025-09-26 08:36:55,350 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083655Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 54fb18d73f979a9c57f11171b16af8c7b797a0b27035cd6ce6fafddc217668c1 gunicorn-registry stdout | 2025-09-26 08:36:55,350 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 45cb1eff055907a15ec92c49483e84ffff75818837345cd752b5eb2bcc4bf321 gunicorn-registry stdout | 2025-09-26 08:36:55,350 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,350 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:55,351 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:55,368 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a?uploadId=68d650a6d73ec60008f93423 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:36:55,368 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8wxk-8lg16u-gya', 'x-amz-id-2': 'mg0l8wxk-8lg16u-gya', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:36:55 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:55,368 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a"5a0c70292ce44f1fe38afbc820d789ec-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a?uploadId=68d650a6d73ec60008f93423' gunicorn-registry stdout | 2025-09-26 08:36:55,368 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,368 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:55,369 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:55,369 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:55,369 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8wxk-8lg16u-gya', 'HostId': 'mg0l8wxk-8lg16u-gya', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8wxk-8lg16u-gya', 'x-amz-id-2': 'mg0l8wxk-8lg16u-gya', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:36:55 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a?uploadId=68d650a6d73ec60008f93423', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/43b022bf-333a-4e07-9acf-fae930e10c5a', 'ETag': '"5a0c70292ce44f1fe38afbc820d789ec-1"'} gunicorn-registry stdout | 2025-09-26 08:36:55,369 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:55,370 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:55,370 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 3730187 bytes to blob cf3647dc-78f9-4894-b015-7972a8f8ed61 took 0.5863864421844482 seconds gunicorn-registry stdout | 2025-09-26 08:36:55,370 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['cf3647dc-78f9-4894-b015-7972a8f8ed61', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:55,372 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'cf3647dc-78f9-4894-b015-7972a8f8ed61', 3730187, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAP//wGHDDwA2jgCp/jZNq/C/x7+cBbxNHefjTxy+/yrxf7tWnajCH0n96K3H/9h5+KN0df5TRRVVVNHb0v8LAAsAAAAAAAAAAFjHAQAAAABm++UGqDJYBxesacMcgrOwi7xn6rCv1uiv6lhrgbLLOZRiLg==', 9, '{"chunks": [["uploads/43b022bf-333a-4e07-9acf-fae930e10c5a", 0, 3730187]]}', 1, 9319936, datetime.datetime(2025, 9, 26, 8, 36, 54, 726054), None, None, 32]) gunicorn-registry stdout | 2025-09-26 08:36:55,374 [251] [DEBUG] [app] Ending request: urn:request:76b0ba8a-021d-43bc-ae38-2a0ae20520d1 (/v2/testorg/alpine/blobs/uploads/cf3647dc-78f9-4894-b015-7972a8f8ed61) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:76b0ba8a-021d-43bc-ae38-2a0ae20520d1', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/cf3647dc-78f9-4894-b015-7972a8f8ed61', 'path': '/v2/testorg/alpine/blobs/uploads/cf3647dc-78f9-4894-b015-7972a8f8ed61', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:55,374 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:55,375 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:55,375 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:55 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/cf3647dc-78f9-4894-b015-7972a8f8ed61 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:55 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/cf3647dc-78f9-4894-b015-7972a8f8ed61 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.604 3731963 0.603) gunicorn-registry stdout | 2025-09-26 08:36:55,798 [251] [DEBUG] [app] Starting request: urn:request:1648c290-7a7d-4040-9268-ea5856a96d81 (/v2/testorg/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:36:55,798 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:55,798 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:55,798 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:55,799 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:55,799 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:55,799 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:55,799 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:55,799 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:55,800 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:55,802 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:55,802 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:55,803 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:55,804 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:55,806 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:55,807 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:55,808 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:55,809 [251] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [2, '4fcb6e09-bf86-4868-a410-12e14781420c', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 36, 55, 809602)]) gunicorn-registry stdout | 2025-09-26 08:36:55,812 [251] [DEBUG] [app] Ending request: urn:request:1648c290-7a7d-4040-9268-ea5856a96d81 (/v2/testorg/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:1648c290-7a7d-4040-9268-ea5856a96d81', 'remote_addr': '10.131.2.20', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/', 'path': '/v2/testorg/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:55,812 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:55,813 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:55,813 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:36:55 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:36:55 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.017 1693 0.016) proxycacheblobworker stdout | 2025-09-26 08:36:55,842 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} gunicorn-registry stdout | 2025-09-26 08:36:56,875 [255] [DEBUG] [app] Starting request: urn:request:0e7436ce-3ea1-42d7-a1dd-a868c9338c90 (/v2/testorg/alpine/blobs/sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:56,875 [255] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:56,875 [255] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:56,875 [255] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:56,876 [255] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:56,876 [255] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:56,876 [255] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:56,876 [255] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:56,876 [255] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:56,877 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:56,879 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:56,880 [255] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:56,880 [255] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60_2 gunicorn-registry stdout | 2025-09-26 08:36:56,880 [255] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:56,881 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:56,883 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:56,883 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:56,885 [255] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:56,887 [255] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:56,888 [255] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60_2: None gunicorn-registry stdout | 2025-09-26 08:36:56,888 [255] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60_2: None gunicorn-registry stdout | 2025-09-26 08:36:56,888 [255] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:56,888 [255] [DEBUG] [app] Ending request: urn:request:0e7436ce-3ea1-42d7-a1dd-a868c9338c90 (/v2/testorg/alpine/blobs/sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:0e7436ce-3ea1-42d7-a1dd-a868c9338c90', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60', 'path': '/v2/testorg/alpine/blobs/sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:56,888 [255] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:56,888 [255] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:56,889 [255] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:56 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:56 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.014 1714 0.014) notificationworker stdout | 2025-09-26 08:36:56,931 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} repositoryactioncounter stdout | 2025-09-26 08:36:57,023 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} gcworker stdout | 2025-09-26 08:36:57,083 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:36:57,084 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:07.085344+00:00 (in 10.001114 seconds) gcworker stdout | 2025-09-26 08:36:57,084 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:27 GMT)" (scheduled at 2025-09-26 08:36:57.083344+00:00) gcworker stdout | 2025-09-26 08:36:57,084 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:36:57,084 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:27 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:36:57,175 [258] [DEBUG] [app] Starting request: urn:request:248ff3ac-20dd-4184-925c-505b040abbfe (/v2/testorg/alpine/blobs/sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:57,175 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:57,175 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:57,175 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:57,176 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:57,176 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:57,176 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:57,176 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:57,176 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:57,177 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,178 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,179 [258] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:57,179 [258] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60_2 gunicorn-registry stdout | 2025-09-26 08:36:57,180 [258] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:57,180 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,182 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,183 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,184 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,185 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,185 [258] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60_2: None gunicorn-registry stdout | 2025-09-26 08:36:57,185 [258] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60_2: None gunicorn-registry stdout | 2025-09-26 08:36:57,185 [258] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:57,186 [258] [DEBUG] [app] Ending request: urn:request:248ff3ac-20dd-4184-925c-505b040abbfe (/v2/testorg/alpine/blobs/sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:248ff3ac-20dd-4184-925c-505b040abbfe', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60', 'path': '/v2/testorg/alpine/blobs/sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:57,186 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:57,186 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:57,186 [258] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:57 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:57 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.012 1714 0.012) gunicorn-registry stdout | 2025-09-26 08:36:57,189 [258] [DEBUG] [app] Starting request: urn:request:e5d8b91a-c320-42f5-aae2-75d3b3cd9436 (/v2/testorg/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:57,189 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:57,189 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:57,189 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:57,190 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:57,190 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:57,190 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:57,190 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:57,190 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:57,191 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,192 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,193 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,194 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,195 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,196 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,197 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:57,198 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,199 [258] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [2, '415361aa-28bf-434d-b4e9-66aae235f46f', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 36, 57, 198877)]) gunicorn-registry stdout | 2025-09-26 08:36:57,201 [258] [DEBUG] [app] Ending request: urn:request:e5d8b91a-c320-42f5-aae2-75d3b3cd9436 (/v2/testorg/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:e5d8b91a-c320-42f5-aae2-75d3b3cd9436', 'remote_addr': '10.129.4.11', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/', 'path': '/v2/testorg/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:57,201 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:57,201 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:57,201 [258] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:57 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:57 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.013 1693 0.013) exportactionlogsworker stdout | 2025-09-26 08:36:57,214 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} gunicorn-registry stdout | 2025-09-26 08:36:57,241 [251] [DEBUG] [app] Starting request: urn:request:6d28607b-b990-4cc9-82ec-1641662b4867 (/v2/testorg/alpine/blobs/uploads/415361aa-28bf-434d-b4e9-66aae235f46f) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:57,241 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '415361aa-28bf-434d-b4e9-66aae235f46f', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:57,241 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:57,241 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:57,242 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:57,242 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:57,242 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:57,242 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:57,242 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:57,243 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,245 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,245 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,247 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,247 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,248 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,249 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,250 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:57,251 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['415361aa-28bf-434d-b4e9-66aae235f46f', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,252 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:57,252 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:57,252 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:57,253 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:57,253 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:57,253 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,253 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,253 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,253 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,253 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,254 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,254 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,254 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,254 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:57,254 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:57,254 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:57,254 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:57,254 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,254 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,254 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,254 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:57,254 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,254 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,254 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,254 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,255 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:57,255 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083657Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:57,255 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083657Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 51195dd4812122db44f7a08e7ba9c47507a4ba2bb454cf6e627e780e2c943a1c gunicorn-registry stdout | 2025-09-26 08:36:57,255 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 26d23cae31fbe4f6d78c7c2a4fe1f4e0daa913e200821674bbd57e91c2a0438a gunicorn-registry stdout | 2025-09-26 08:36:57,255 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,255 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:57,255 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:57,262 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:57,263 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8yeh-70p7sm-1611', 'x-amz-id-2': 'mg0l8yeh-70p7sm-1611', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:57 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:57,263 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff4925268d650a9d73ec60008f9343a' gunicorn-registry stdout | 2025-09-26 08:36:57,263 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,263 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:57,263 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,263 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8yeh-70p7sm-1611', 'HostId': 'mg0l8yeh-70p7sm-1611', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8yeh-70p7sm-1611', 'x-amz-id-2': 'mg0l8yeh-70p7sm-1611', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:57 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252', 'UploadId': '68d650a9d73ec60008f9343a'} gunicorn-registry stdout | 2025-09-26 08:36:57,263 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:57,316 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:36:57,316 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:36:57,316 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252', 'UploadId': '68d650a9d73ec60008f9343a', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89a7420>, 'ContentLength': 79039} gunicorn-registry stdout | 2025-09-26 08:36:57,316 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,317 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,317 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,317 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,317 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,317 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,317 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,317 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,317 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:57,317 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:57,317 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:57,317 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:57,317 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,317 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,317 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:36:57,318 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,318 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,318 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252', 'query_string': {'uploadId': '68d650a9d73ec60008f9343a', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '79039', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': '4X7U8uqtMaTlG12/zwkUDw==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b89a7420>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252?uploadId=68d650a9d73ec60008f9343a&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252', 'UploadId': '68d650a9d73ec60008f9343a', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89a7420>, 'ContentLength': 79039}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:57,318 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,318 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,318 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,318 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,318 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:57,318 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252 gunicorn-registry stdout | partNumber=1&uploadId=68d650a9d73ec60008f9343a gunicorn-registry stdout | content-length:79039 gunicorn-registry stdout | content-md5:4X7U8uqtMaTlG12/zwkUDw== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083657Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:57,318 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083657Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 91165df17306ff9c547559ad3a22cec14763ecdc720d20219804e27bc72933a2 gunicorn-registry stdout | 2025-09-26 08:36:57,318 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | dc74ab40a7b9c4ad448a5fe5ac016e03b6d2e0ebfe0a8f0eea319748d3a3ef5f gunicorn-registry stdout | 2025-09-26 08:36:57,318 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,318 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:57,319 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:57,319 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:57,320 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:36:57,403 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252?uploadId=68d650a9d73ec60008f9343a&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:57,403 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8yg8-827jv4-rk0', 'x-amz-id-2': 'mg0l8yg8-827jv4-rk0', 'ETag': '"e17ed4f2eaad31a4e51b5dbfcf09140f"', 'Date': 'Fri, 26 Sep 2025 08:36:57 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:36:57,403 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:57,403 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,403 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:57,403 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,403 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8yg8-827jv4-rk0', 'HostId': 'mg0l8yg8-827jv4-rk0', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8yg8-827jv4-rk0', 'x-amz-id-2': 'mg0l8yg8-827jv4-rk0', 'etag': '"e17ed4f2eaad31a4e51b5dbfcf09140f"', 'date': 'Fri, 26 Sep 2025 08:36:57 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"e17ed4f2eaad31a4e51b5dbfcf09140f"'} gunicorn-registry stdout | 2025-09-26 08:36:57,403 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252', 'UploadId': '68d650a9d73ec60008f9343a', 'MultipartUpload': {'Parts': [{'ETag': '"e17ed4f2eaad31a4e51b5dbfcf09140f"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:36:57,403 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,403 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,403 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,403 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,403 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,403 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,403 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,404 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:57,404 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:57,404 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:57,404 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:57,404 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,404 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,404 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,404 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252', 'query_string': {'uploadId': '68d650a9d73ec60008f9343a'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"e17ed4f2eaad31a4e51b5dbfcf09140f"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252?uploadId=68d650a9d73ec60008f9343a', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252', 'UploadId': '68d650a9d73ec60008f9343a', 'MultipartUpload': {'Parts': [{'ETag': '"e17ed4f2eaad31a4e51b5dbfcf09140f"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:57,404 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,404 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,404 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,404 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,404 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:57,405 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252 gunicorn-registry stdout | uploadId=68d650a9d73ec60008f9343a gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:dcd12200bf8493e09fda3ebde1c3ede06e4b38a207c3b307bdf187f740798805 gunicorn-registry stdout | x-amz-date:20250926T083657Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | dcd12200bf8493e09fda3ebde1c3ede06e4b38a207c3b307bdf187f740798805 gunicorn-registry stdout | 2025-09-26 08:36:57,405 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083657Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | a38f1457b66cbf89f99fa9498c581131ccaa42a36758e973332dded193b3f49d gunicorn-registry stdout | 2025-09-26 08:36:57,405 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 2bac2e5702aecb39f6466188bc30d04c43835d1b55841e2ffc69add48bcb7422 gunicorn-registry stdout | 2025-09-26 08:36:57,405 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,405 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:57,405 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:57,421 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252?uploadId=68d650a9d73ec60008f9343a HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:36:57,422 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8yim-9hhwip-4bz', 'x-amz-id-2': 'mg0l8yim-9hhwip-4bz', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:36:57 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:57,422 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252"3ffaf93ef0ab02979db522559590578f-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252?uploadId=68d650a9d73ec60008f9343a' gunicorn-registry stdout | 2025-09-26 08:36:57,422 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,422 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,422 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:57,422 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,422 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8yim-9hhwip-4bz', 'HostId': 'mg0l8yim-9hhwip-4bz', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8yim-9hhwip-4bz', 'x-amz-id-2': 'mg0l8yim-9hhwip-4bz', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:36:57 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252?uploadId=68d650a9d73ec60008f9343a', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252', 'ETag': '"3ffaf93ef0ab02979db522559590578f-1"'} gunicorn-registry stdout | 2025-09-26 08:36:57,422 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:57,423 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:57,423 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 79039 bytes to blob 415361aa-28bf-434d-b4e9-66aae235f46f took 0.17093300819396973 seconds gunicorn-registry stdout | 2025-09-26 08:36:57,424 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['415361aa-28bf-434d-b4e9-66aae235f46f', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,425 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, '415361aa-28bf-434d-b4e9-66aae235f46f', 79039, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwMjIxNTNmYzZhNGY4ZWM5NmRkMTM1OCIsInJlbGF0aW9uc2hpcFR5cGUiOiJHRU5FUkFURURfRlJPTSJ9XX19Yj8AAAAAAAAAAKQJAAAAAACmiigfTz1QixYKoKpBndBuZjck2UkkZwJ+IKQXGOrcDJRiLg==', 9, '{"chunks": [["uploads/01c65698-c40b-41a8-bd29-90050ff49252", 0, 79039]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 36, 57, 198877), None, None, 34]) gunicorn-registry stdout | 2025-09-26 08:36:57,427 [251] [DEBUG] [app] Ending request: urn:request:6d28607b-b990-4cc9-82ec-1641662b4867 (/v2/testorg/alpine/blobs/uploads/415361aa-28bf-434d-b4e9-66aae235f46f) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:6d28607b-b990-4cc9-82ec-1641662b4867', 'remote_addr': '10.129.4.11', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/415361aa-28bf-434d-b4e9-66aae235f46f', 'path': '/v2/testorg/alpine/blobs/uploads/415361aa-28bf-434d-b4e9-66aae235f46f', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:57,427 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:57,427 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:57,428 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:57 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/415361aa-28bf-434d-b4e9-66aae235f46f HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:57 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/415361aa-28bf-434d-b4e9-66aae235f46f HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.188 80813 0.187) gunicorn-registry stdout | 2025-09-26 08:36:57,468 [251] [DEBUG] [app] Starting request: urn:request:6b392609-7369-43d0-92d0-596400394bb5 (/v2/testorg/alpine/blobs/uploads/415361aa-28bf-434d-b4e9-66aae235f46f) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:57,468 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '415361aa-28bf-434d-b4e9-66aae235f46f', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:57,468 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:57,468 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:57,469 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:57,469 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:57,469 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:57,469 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:57,469 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:57,470 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,471 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,472 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,473 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,474 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,475 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,476 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,477 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:57,478 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['415361aa-28bf-434d-b4e9-66aae235f46f', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,479 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:57,479 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:57,479 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:57,480 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:57,480 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f5158b31-1c55-493d-a0f8-0732bc4cd9dd', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:57,480 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,480 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,480 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,480 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,480 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,480 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,480 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,480 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,480 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:57,480 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:57,481 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:57,481 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:57,481 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,481 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,481 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,481 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/f5158b31-1c55-493d-a0f8-0732bc4cd9dd?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f5158b31-1c55-493d-a0f8-0732bc4cd9dd', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f5158b31-1c55-493d-a0f8-0732bc4cd9dd?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f5158b31-1c55-493d-a0f8-0732bc4cd9dd', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:57,481 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,481 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,481 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,481 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,481 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:57,481 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f5158b31-1c55-493d-a0f8-0732bc4cd9dd gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083657Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:57,481 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083657Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | a228c4cf74e2e9e283b68b5d29c9cf23f42e4b69636b4afdc3fc60eec0d9abfa gunicorn-registry stdout | 2025-09-26 08:36:57,482 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | f7ca69bcc6f0ca16724dec91e9a4d602a4277cc1f2f293a762a8c819404c1ea4 gunicorn-registry stdout | 2025-09-26 08:36:57,482 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,482 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:57,482 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:57,488 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f5158b31-1c55-493d-a0f8-0732bc4cd9dd?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:57,488 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8ykr-ardnzm-pji', 'x-amz-id-2': 'mg0l8ykr-ardnzm-pji', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:57 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:57,488 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/f5158b31-1c55-493d-a0f8-0732bc4cd9dd68d650a9d73ec60008f93446' gunicorn-registry stdout | 2025-09-26 08:36:57,488 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,488 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:57,488 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,488 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8ykr-ardnzm-pji', 'HostId': 'mg0l8ykr-ardnzm-pji', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8ykr-ardnzm-pji', 'x-amz-id-2': 'mg0l8ykr-ardnzm-pji', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:57 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f5158b31-1c55-493d-a0f8-0732bc4cd9dd', 'UploadId': '68d650a9d73ec60008f93446'} gunicorn-registry stdout | 2025-09-26 08:36:57,488 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:57,489 [251] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f5158b31-1c55-493d-a0f8-0732bc4cd9dd', 'UploadId': '68d650a9d73ec60008f93446'} gunicorn-registry stdout | 2025-09-26 08:36:57,489 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,489 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,489 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,489 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,489 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,489 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,490 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:57,490 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:57,490 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:57,490 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:57,490 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,490 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,490 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,490 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/f5158b31-1c55-493d-a0f8-0732bc4cd9dd', 'query_string': {'uploadId': '68d650a9d73ec60008f93446'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f5158b31-1c55-493d-a0f8-0732bc4cd9dd', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f5158b31-1c55-493d-a0f8-0732bc4cd9dd?uploadId=68d650a9d73ec60008f93446', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f5158b31-1c55-493d-a0f8-0732bc4cd9dd', 'UploadId': '68d650a9d73ec60008f93446'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:57,490 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,490 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,490 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,490 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,490 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:57,491 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f5158b31-1c55-493d-a0f8-0732bc4cd9dd gunicorn-registry stdout | uploadId=68d650a9d73ec60008f93446 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083657Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:57,491 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083657Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | b01cc4740274f625b0b370d6acb1a4c87a926b2466c6a5211a56b099f9dadfa6 gunicorn-registry stdout | 2025-09-26 08:36:57,491 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 7170e2c0607a6c24def8568cd78d7c580b4ae96bc65f1ada222b942d7bd95619 gunicorn-registry stdout | 2025-09-26 08:36:57,491 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,491 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:57,491 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:57,498 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f5158b31-1c55-493d-a0f8-0732bc4cd9dd?uploadId=68d650a9d73ec60008f93446 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:36:57,498 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8yl0-awrlws-18ik', 'x-amz-id-2': 'mg0l8yl0-awrlws-18ik', 'Date': 'Fri, 26 Sep 2025 08:36:57 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:57,498 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:57,498 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,498 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:57,498 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,499 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8yl0-awrlws-18ik', 'HostId': 'mg0l8yl0-awrlws-18ik', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8yl0-awrlws-18ik', 'x-amz-id-2': 'mg0l8yl0-awrlws-18ik', 'date': 'Fri, 26 Sep 2025 08:36:57 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:36:57,499 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 415361aa-28bf-434d-b4e9-66aae235f46f took 0.019687175750732422 seconds gunicorn-registry stdout | 2025-09-26 08:36:57,500 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['415361aa-28bf-434d-b4e9-66aae235f46f', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,501 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, '415361aa-28bf-434d-b4e9-66aae235f46f', 79039, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwMjIxNTNmYzZhNGY4ZWM5NmRkMTM1OCIsInJlbGF0aW9uc2hpcFR5cGUiOiJHRU5FUkFURURfRlJPTSJ9XX19Yj8AAAAAAAAAAKQJAAAAAACmiigfTz1QixYKoKpBndBuZjck2UkkZwJ+IKQXGOrcDJRiLg==', 9, '{"chunks": [["uploads/01c65698-c40b-41a8-bd29-90050ff49252", 0, 79039]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 36, 57, 198877), None, None, 34]) gunicorn-registry stdout | 2025-09-26 08:36:57,502 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:57,503 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:57,503 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:57,503 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:57,503 [251] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/64/642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e'} gunicorn-registry stdout | 2025-09-26 08:36:57,503 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,503 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,504 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,504 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,504 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,504 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,504 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,504 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:57,504 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:57,504 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:57,504 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:57,504 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,504 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,504 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,504 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/64/642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/64/642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/64/642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/64/642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:57,504 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,504 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,504 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,504 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,505 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:57,505 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/64/642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083657Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:57,505 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083657Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 965b9960f7bcef002b0d453b216bf041d88a7df6f522fa0281299a96c993cf7f gunicorn-registry stdout | 2025-09-26 08:36:57,505 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | c25a77fbbc464fe0b8be217f9b39b4f40251843ca30b9e2c2f151cdff1b12a9b gunicorn-registry stdout | 2025-09-26 08:36:57,505 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,505 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:57,505 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:57,510 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/64/642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:36:57,510 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8yle-b53k60-b3m', 'x-amz-id-2': 'mg0l8yle-b53k60-b3m', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:57 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:57,511 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:57,511 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,511 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:57,511 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,511 [251] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:36:57,511 [251] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:36:57,511 [251] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/64/642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e gunicorn-registry stdout | 2025-09-26 08:36:57,511 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:57,511 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:57,511 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,512 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,513 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:57,513 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083657Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:57,513 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083657Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 9b6be10ae8a362f006d20c164e4d95d4f2414570a0aecaf77a10e9287a7fe857 gunicorn-registry stdout | 2025-09-26 08:36:57,513 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 88799491e619cf3b98886f4ce5116466eba21f0faaeb9b01dc13454fa84ced1c gunicorn-registry stdout | 2025-09-26 08:36:57,513 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,513 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,513 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:57,513 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:57,514 [251] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | 2025-09-26 08:36:57,547 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:57,547 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8ymf-br23yd-1d2q', 'x-amz-id-2': 'mg0l8ymf-br23yd-1d2q', 'ETag': '"3ffaf93ef0ab02979db522559590578f-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:57 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '79039', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:57 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:57,547 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:57,547 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,548 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:57,548 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,548 [251] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/64/642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:36:57,548 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:57,548 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/64/642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:57,548 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/64/642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:57,548 [251] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/64/642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/64/642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e', 'extra_args': {}, 'callbacks': [], 'size': 79039} gunicorn-registry stdout | 2025-09-26 08:36:57,548 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,548 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,548 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,548 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,548 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,548 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,548 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,548 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,548 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,548 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,548 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:57,548 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:57,549 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:57,549 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:57,549 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,549 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,549 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,549 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/64/642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/64/642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/64/642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/64/642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:57,549 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,549 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,549 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,549 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,549 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,549 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:57,549 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/64/642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/01c65698-c40b-41a8-bd29-90050ff49252 gunicorn-registry stdout | x-amz-date:20250926T083657Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:57,549 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083657Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 98e378efb56ac694bb4f9a390ed6703110915069e05eed66432f8ac5afa894f2 gunicorn-registry stdout | 2025-09-26 08:36:57,549 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 70130577198bd87640459e1f0e9ed9f81ea11f9b48851a2e6b031a72ee06e767 gunicorn-registry stdout | 2025-09-26 08:36:57,549 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,549 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,550 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:57,550 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:57,550 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:57,576 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/64/642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:36:57,576 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8ymo-bw8c8b-mz0', 'x-amz-id-2': 'mg0l8ymo-bw8c8b-mz0', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:36:57 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:57,576 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:36:57.000Z"3ffaf93ef0ab02979db522559590578f-1"' gunicorn-registry stdout | 2025-09-26 08:36:57,576 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,576 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:57,576 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:57,576 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:57,576 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:57,577 [251] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 415361aa-28bf-434d-b4e9-66aae235f46f with digest sha256:642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e took 0.06598377227783203 seconds gunicorn-registry stdout | 2025-09-26 08:36:57,577 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['415361aa-28bf-434d-b4e9-66aae235f46f', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,579 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,579 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['a353fd0b-5b31-4201-82b7-86227509abf1', 79039, None, True, True, 'sha256:642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e']) gunicorn-registry stdout | 2025-09-26 08:36:57,580 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [35, 9]) gunicorn-registry stdout | 2025-09-26 08:36:57,581 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,581 [251] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [2, 35, datetime.datetime(2025, 9, 26, 8, 36, 57, 581563), datetime.datetime(2025, 9, 26, 9, 36, 57, 581549)]) gunicorn-registry stdout | 2025-09-26 08:36:57,582 [251] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [34]) gunicorn-registry stdout | 2025-09-26 08:36:57,584 [251] [DEBUG] [app] Ending request: urn:request:6b392609-7369-43d0-92d0-596400394bb5 (/v2/testorg/alpine/blobs/uploads/415361aa-28bf-434d-b4e9-66aae235f46f) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:6b392609-7369-43d0-92d0-596400394bb5', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/415361aa-28bf-434d-b4e9-66aae235f46f?digest=sha256:642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e', 'path': '/v2/testorg/alpine/blobs/uploads/415361aa-28bf-434d-b4e9-66aae235f46f', 'parameters': {'digest': 'sha256:642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:57,584 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:57,584 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:57,585 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:57 +0000] "PUT /v2/testorg/alpine/blobs/uploads/415361aa-28bf-434d-b4e9-66aae235f46f?digest=sha256%3A642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:57 +0000] "PUT /v2/testorg/alpine/blobs/uploads/415361aa-28bf-434d-b4e9-66aae235f46f?digest=sha256%3A642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.118 1849 0.117) manifestsubjectbackfillworker stdout | 2025-09-26 08:36:57,744 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} gunicorn-web stdout | 2025-09-26 08:36:57,834 [247] [DEBUG] [app] Starting request: urn:request:c271a1b4-7cd6-4543-ac2a-23c4c8291ed6 (/_storage_proxy_auth) {'X-Forwarded-For': '3.147.184.98'} gunicorn-web stdout | 2025-09-26 08:36:57,834 [247] [DEBUG] [storage.downloadproxy] Got token b'eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODE3LCJpYXQiOjE3NTg4NzU4MTcsImV4cCI6MTc1ODg3NjQxNywic3ViIjoic3RvcmFnZXByb3h5IiwiYWNjZXNzIjpbeyJ0eXBlIjoic3RvcmFnZXByb3h5IiwidXJpIjoicXVheS1kYXRhc3RvcmUtZTI5YzM5OTQtNjJlYi00ZTlmLTk1NTAtYmFhMTFmODc0MDg0L2RhdGFzdG9yYWdlL3JlZ2lzdHJ5L3NoYTI1Ni9jNy9jNzg3NjIwNTAxYjc0NmIzYWE5ZWMwMjFmM2RkYjBiNzA3NTcyYjVjNjhlMzNkNzNiZTM5MmI5YzA3OGE0OTkzP0FXU0FjY2Vzc0tleUlkPUtxVUFodjYwQUdsQUREcTBNY0taJlNpZ25hdHVyZT1HR2lmMVJPTEVHYUFoSlFaam9YTVJsV1pxSVUlM0QmRXhwaXJlcz0xNzU4ODc2NDE3IiwiaG9zdCI6InMzLm9wZW5zaGlmdC1zdG9yYWdlLnN2Yy5jbHVzdGVyLmxvY2FsOjQ0MyIsInNjaGVtZSI6Imh0dHBzIn1dLCJjb250ZXh0Ijp7fX0.wA-MSBjzcpCcSLwwMa5LcC_Gb7vRqH3RmR6nOY5fqsOJvMOPG4i8z4_C2DIipvFgD1iySH9iHoNG6PpBYPzqx09v2yai4jwwCpPP2kdCdvW6PGTr_-9oWguZj-u8NSeT8nebsj6l0f65EO_kL08KbLhfPzN0gqqEgZNeiXuexyFo1NifDpvMpC7rtYBZxAJIdraES09ljjRmHagJ5SasASQxgzqTwfg96h2pWbC18REpexY14QGEmslK4RRLhLvsw0Bg7QGtrtDtiUZM10af-rzJsYhE5u9PK9BzXgFT0cr9Q-ySWdF-6axVrUru-XHP7CqhY0uQrDWJBgg8ZttelQ' for storage proxy auth request /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ERTNMQ0pwWVhRaU9qRTNOVGc0TnpVNE1UY3NJbVY0Y0NJNk1UYzFPRGczTmpReE55d2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5ak55OWpOemczTmpJd05UQXhZamMwTm1JellXRTVaV013TWpGbU0yUmtZakJpTnpBM05UY3lZalZqTmpobE16TmtOek5pWlRNNU1tSTVZekEzT0dFME9Ua3pQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFIUjJsbU1WSlBURVZIWVVGb1NsRmFhbTlZVFZKc1YxcHhTVlVsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRFM0lpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAud0EtTVNCanpjcENjU0x3d01hNUxjQ19HYjd2UnFIM1JtUjZuT1k1ZnFzT0p2TU9QRzRpOHo0X0MyRElpcHZGZ0QxaXlTSDlpSG9ORzZQcEJZUHpxeDA5djJ5YWk0and3Q3BQUDJrZENkdlc2UEdUcl8tOW9XZ3Vaai11OE5TZVQ4bmVic2o2bDBmNjVFT19rTDA4S2JMaGZQek4wZ3FxRWdaTmVpWHVleHlGbzFOaWZEcHZNcEM3cnRZQlp4QUpJZHJhRVMwOWxqalJtSGFnSjVTYXNBU1F4Z3pxVHdmZzk2aDJwV2JDMThSRXBleFkxNFFHRW1zbEs0UlJMaEx2c3cwQmc3UUd0cnREdGlVWk0xMGFmLXJ6SnNZaEU1dTlQSzlCelhnRlQwY3I5US15U1dkRi02YXhWclVydS1YSFA3Q3FoWTB1UXJEV0pCZ2c4WnR0ZWxR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=GGif1ROLEGaAhJQZjoXMRlWZqIU%3D&Expires=1758876417 with parts ['ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ERTNMQ0pwWVhRaU9qRTNOVGc0TnpVNE1UY3NJbVY0Y0NJNk1UYzFPRGczTmpReE55d2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5ak55OWpOemczTmpJd05UQXhZamMwTm1JellXRTVaV013TWpGbU0yUmtZakJpTnpBM05UY3lZalZqTmpobE16TmtOek5pWlRNNU1tSTVZekEzT0dFME9Ua3pQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFIUjJsbU1WSlBURVZIWVVGb1NsRmFhbTlZVFZKc1YxcHhTVlVsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRFM0lpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAud0EtTVNCanpjcENjU0x3d01hNUxjQ19HYjd2UnFIM1JtUjZuT1k1ZnFzT0p2TU9QRzRpOHo0X0MyRElpcHZGZ0QxaXlTSDlpSG9ORzZQcEJZUHpxeDA5djJ5YWk0and3Q3BQUDJrZENkdlc2UEdUcl8tOW9XZ3Vaai11OE5TZVQ4bmVic2o2bDBmNjVFT19rTDA4S2JMaGZQek4wZ3FxRWdaTmVpWHVleHlGbzFOaWZEcHZNcEM3cnRZQlp4QUpJZHJhRVMwOWxqalJtSGFnSjVTYXNBU1F4Z3pxVHdmZzk2aDJwV2JDMThSRXBleFkxNFFHRW1zbEs0UlJMaEx2c3cwQmc3UUd0cnREdGlVWk0xMGFmLXJ6SnNZaEU1dTlQSzlCelhnRlQwY3I5US15U1dkRi02YXhWclVydS1YSFA3Q3FoWTB1UXJEV0pCZ2c4WnR0ZWxR', 'https', 's3.openshift-storage.svc.cluster.local:443', 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=GGif1ROLEGaAhJQZjoXMRlWZqIU%3D&Expires=1758876417'] gunicorn-web stdout | 2025-09-26 08:36:57,835 [247] [DEBUG] [app] Ending request: urn:request:c271a1b4-7cd6-4543-ac2a-23c4c8291ed6 (/_storage_proxy_auth) {'endpoint': '_storage_proxy_auth', 'request_id': 'urn:request:c271a1b4-7cd6-4543-ac2a-23c4c8291ed6', 'remote_addr': '3.147.184.98', 'http_method': 'GET', 'original_url': 'https://web_app_server/_storage_proxy_auth', 'path': '/_storage_proxy_auth', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'Go-http-client/1.1'} gunicorn-web stdout | 2025-09-26 08:36:57,836 [247] [INFO] [gunicorn.access] 3.147.184.98 - - [26/Sep/2025:08:36:57 +0000] "GET /_storage_proxy_auth HTTP/1.0" 200 2 "-" "Go-http-client/1.1" gunicorn-registry stdout | 2025-09-26 08:36:57,951 [251] [DEBUG] [app] Starting request: urn:request:e9f30182-364b-4287-9ad5-f0f7d64bed14 (/v2/testorg/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:57,951 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:57,951 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:57,951 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:57,953 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:57,953 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:57,953 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:57,953 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:57,953 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:57,954 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,956 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,957 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,958 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,960 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,961 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,962 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:57,963 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:57,964 [251] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [2, '240941d9-67d5-46de-b631-1a3a0aa7a109', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 36, 57, 963829)]) gunicorn-registry stdout | 2025-09-26 08:36:57,966 [251] [DEBUG] [app] Ending request: urn:request:e9f30182-364b-4287-9ad5-f0f7d64bed14 (/v2/testorg/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:e9f30182-364b-4287-9ad5-f0f7d64bed14', 'remote_addr': '10.129.4.11', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/', 'path': '/v2/testorg/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:57,966 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:57,966 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:57,966 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:57 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:57 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.016 1693 0.016) nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:58 +0000] "GET /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ERTNMQ0pwWVhRaU9qRTNOVGc0TnpVNE1UY3NJbVY0Y0NJNk1UYzFPRGczTmpReE55d2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5ak55OWpOemczTmpJd05UQXhZamMwTm1JellXRTVaV013TWpGbU0yUmtZakJpTnpBM05UY3lZalZqTmpobE16TmtOek5pWlRNNU1tSTVZekEzT0dFME9Ua3pQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFIUjJsbU1WSlBURVZIWVVGb1NsRmFhbTlZVFZKc1YxcHhTVlVsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRFM0lpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAud0EtTVNCanpjcENjU0x3d01hNUxjQ19HYjd2UnFIM1JtUjZuT1k1ZnFzT0p2TU9QRzRpOHo0X0MyRElpcHZGZ0QxaXlTSDlpSG9ORzZQcEJZUHpxeDA5djJ5YWk0and3Q3BQUDJrZENkdlc2UEdUcl8tOW9XZ3Vaai11OE5TZVQ4bmVic2o2bDBmNjVFT19rTDA4S2JMaGZQek4wZ3FxRWdaTmVpWHVleHlGbzFOaWZEcHZNcEM3cnRZQlp4QUpJZHJhRVMwOWxqalJtSGFnSjVTYXNBU1F4Z3pxVHdmZzk2aDJwV2JDMThSRXBleFkxNFFHRW1zbEs0UlJMaEx2c3cwQmc3UUd0cnREdGlVWk0xMGFmLXJ6SnNZaEU1dTlQSzlCelhnRlQwY3I5US15U1dkRi02YXhWclVydS1YSFA3Q3FoWTB1UXJEV0pCZ2c4WnR0ZWxR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c7/c787620501b746b3aa9ec021f3ddb0b707572b5c68e33d73be392b9c078a4993?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=GGif1ROLEGaAhJQZjoXMRlWZqIU%3D&Expires=1758876417 HTTP/1.1" 200 3610201 "-" "Go-http-client/1.1" (0.361 2403 0.356) gunicorn-registry stdout | 2025-09-26 08:36:58,282 [256] [DEBUG] [app] Starting request: urn:request:3a0c8eb2-5eb5-42f4-b507-c0d4b8675cb7 (/v2/testorg/alpine/blobs/uploads/240941d9-67d5-46de-b631-1a3a0aa7a109) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:58,282 [256] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '240941d9-67d5-46de-b631-1a3a0aa7a109', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:58,282 [256] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:58,282 [256] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:58,283 [256] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:58,283 [256] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:58,283 [256] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:58,283 [256] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:58,283 [256] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:58,284 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:58,285 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:58,286 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:58,287 [256] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:58,288 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:58,289 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:58,291 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:58,292 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:58,293 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['240941d9-67d5-46de-b631-1a3a0aa7a109', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:58,294 [256] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:58,294 [256] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:58,296 [256] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/endpoints.json gunicorn-registry stdout | 2025-09-26 08:36:58,314 [256] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/sdk-default-configuration.json gunicorn-registry stdout | 2025-09-26 08:36:58,315 [256] [DEBUG] [botocore.hooks] Event choose-service-name: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,326 [256] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/s3/2006-03-01/service-2.json gunicorn-registry stdout | 2025-09-26 08:36:58,344 [256] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/s3/2006-03-01/endpoint-rule-set-1.json gunicorn-registry stdout | 2025-09-26 08:36:58,347 [256] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/partitions.json gunicorn-registry stdout | 2025-09-26 08:36:58,349 [256] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,349 [256] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler ._handler at 0x7fe1bb6fab60> gunicorn-registry stdout | 2025-09-26 08:36:58,390 [256] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,392 [256] [DEBUG] [botocore.endpoint] Setting s3 timeout as (60, 60) gunicorn-registry stdout | 2025-09-26 08:36:58,395 [256] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/botocore/data/_retry.json gunicorn-registry stdout | 2025-09-26 08:36:58,395 [256] [DEBUG] [botocore.client] Registering retry handlers for service: s3 gunicorn-registry stdout | 2025-09-26 08:36:58,395 [256] [DEBUG] [botocore.utils] Registering S3 region redirector handler gunicorn-registry stdout | 2025-09-26 08:36:58,406 [256] [DEBUG] [botocore.loaders] Loading JSON file: /app/lib/python3.12/site-packages/boto3/data/s3/2006-03-01/resources-1.json gunicorn-registry stdout | 2025-09-26 08:36:58,407 [256] [DEBUG] [botocore.hooks] Event choose-service-name: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,413 [256] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,413 [256] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler ._handler at 0x7fe1bb6fab60> gunicorn-registry stdout | 2025-09-26 08:36:58,413 [256] [DEBUG] [botocore.hooks] Event creating-client-class.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,414 [256] [DEBUG] [botocore.endpoint] Setting s3 timeout as (60, 60) gunicorn-registry stdout | 2025-09-26 08:36:58,415 [256] [DEBUG] [botocore.client] Registering retry handlers for service: s3 gunicorn-registry stdout | 2025-09-26 08:36:58,415 [256] [DEBUG] [botocore.utils] Registering S3 region redirector handler gunicorn-registry stdout | 2025-09-26 08:36:58,416 [256] [DEBUG] [boto3.resources.factory] Loading s3:s3 gunicorn-registry stdout | 2025-09-26 08:36:58,417 [256] [DEBUG] [boto3.resources.factory] Loading s3:Bucket gunicorn-registry stdout | 2025-09-26 08:36:58,417 [256] [DEBUG] [boto3.resources.model] Renaming Bucket attribute name gunicorn-registry stdout | 2025-09-26 08:36:58,418 [256] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Bucket: calling handler ._handler at 0x7fe1bb6fae80> gunicorn-registry stdout | 2025-09-26 08:36:58,418 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,418 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,418 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,418 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,418 [256] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,418 [256] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,419 [256] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:58,419 [256] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:58,419 [256] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:58,419 [256] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:58,420 [256] [DEBUG] [botocore.hooks] Event before-call.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,420 [256] [DEBUG] [botocore.hooks] Event before-call.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,420 [256] [DEBUG] [botocore.hooks] Event before-call.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,420 [256] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadBucket) with params: {'url_path': '', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:58,420 [256] [DEBUG] [botocore.hooks] Event request-created.s3.HeadBucket: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,420 [256] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadBucket: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,420 [256] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,421 [256] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,422 [256] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:58,422 [256] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083658Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:58,422 [256] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083658Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 0c77d74263bf1f63642e9536e26f6d724e2097cd8aa30984aa056761256556c8 gunicorn-registry stdout | 2025-09-26 08:36:58,422 [256] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 014e38272f157e3d5235158c32a6825fc41d65732dbff4410b8384e2808e65c5 gunicorn-registry stdout | 2025-09-26 08:36:58,422 [256] [DEBUG] [botocore.hooks] Event request-created.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,422 [256] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:58,423 [256] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:58,424 [256] [DEBUG] [urllib3.connectionpool] Starting new HTTPS connection (1): s3.openshift-storage.svc.cluster.local:443 gunicorn-registry stdout | 2025-09-26 08:36:58,456 [256] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:58,456 [256] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8zbl-a74qqe-1877', 'x-amz-id-2': 'mg0l8zbl-a74qqe-1877', 'Date': 'Fri, 26 Sep 2025 08:36:58 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:58,456 [256] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:58,456 [256] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadBucket: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,456 [256] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:58,457 [256] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadBucket: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,457 [256] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:58,458 [256] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:58,458 [256] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fb004a84-6e9e-4ec4-8988-55918e9c96cd', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:58,458 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,458 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,458 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,458 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,458 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,459 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,459 [256] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,459 [256] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,459 [256] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:58,459 [256] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:58,459 [256] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:58,459 [256] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:58,460 [256] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,460 [256] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,460 [256] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,460 [256] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/fb004a84-6e9e-4ec4-8988-55918e9c96cd?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fb004a84-6e9e-4ec4-8988-55918e9c96cd', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fb004a84-6e9e-4ec4-8988-55918e9c96cd?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fb004a84-6e9e-4ec4-8988-55918e9c96cd', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:58,460 [256] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,460 [256] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,460 [256] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,460 [256] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,461 [256] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:58,461 [256] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fb004a84-6e9e-4ec4-8988-55918e9c96cd gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083658Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:58,461 [256] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083658Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 4d92f71f95414eb30e8a244d6611cd300d9f225cbfcd89013723002d92b6ee9e gunicorn-registry stdout | 2025-09-26 08:36:58,461 [256] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 34b24ec5ce097c5706287a16ca75eb5c4a195140822ba0d3af86c56e3c50a53e gunicorn-registry stdout | 2025-09-26 08:36:58,461 [256] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,461 [256] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:58,461 [256] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:58,462 [256] [DEBUG] [urllib3.connectionpool] Starting new HTTPS connection (1): s3.openshift-storage.svc.cluster.local:443 gunicorn-registry stdout | 2025-09-26 08:36:58,491 [256] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fb004a84-6e9e-4ec4-8988-55918e9c96cd?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:58,491 [256] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8zcm-at7k4x-19bf', 'x-amz-id-2': 'mg0l8zcm-at7k4x-19bf', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:58 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:58,491 [256] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/fb004a84-6e9e-4ec4-8988-55918e9c96cd68d650aad73ec60008f93452' gunicorn-registry stdout | 2025-09-26 08:36:58,492 [256] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,492 [256] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:58,492 [256] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,492 [256] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8zcm-at7k4x-19bf', 'HostId': 'mg0l8zcm-at7k4x-19bf', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8zcm-at7k4x-19bf', 'x-amz-id-2': 'mg0l8zcm-at7k4x-19bf', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:58 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fb004a84-6e9e-4ec4-8988-55918e9c96cd', 'UploadId': '68d650aad73ec60008f93452'} gunicorn-registry stdout | 2025-09-26 08:36:58,492 [256] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:36:58,493 [256] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fb004a84-6e9e-4ec4-8988-55918e9c96cd', 'UploadId': '68d650aad73ec60008f93452'} gunicorn-registry stdout | 2025-09-26 08:36:58,493 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,494 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,494 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,494 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,494 [256] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,494 [256] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,494 [256] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:58,494 [256] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:58,494 [256] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:58,494 [256] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:58,494 [256] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,494 [256] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,494 [256] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,494 [256] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/fb004a84-6e9e-4ec4-8988-55918e9c96cd', 'query_string': {'uploadId': '68d650aad73ec60008f93452'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fb004a84-6e9e-4ec4-8988-55918e9c96cd', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fb004a84-6e9e-4ec4-8988-55918e9c96cd?uploadId=68d650aad73ec60008f93452', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fb004a84-6e9e-4ec4-8988-55918e9c96cd', 'UploadId': '68d650aad73ec60008f93452'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:58,494 [256] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,495 [256] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,495 [256] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,495 [256] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,495 [256] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:58,495 [256] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fb004a84-6e9e-4ec4-8988-55918e9c96cd gunicorn-registry stdout | uploadId=68d650aad73ec60008f93452 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083658Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:58,495 [256] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083658Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | a44d8ff38c9c9c4d0e5d632ee7533dd8a0fe929ed0651a33aae83ff2bf94daae gunicorn-registry stdout | 2025-09-26 08:36:58,495 [256] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 1ae2b1fab7770c6d8bcc5ced995d8f713e434aa696bab2882dd3297774a8233f gunicorn-registry stdout | 2025-09-26 08:36:58,495 [256] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,495 [256] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:58,495 [256] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:58,503 [256] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fb004a84-6e9e-4ec4-8988-55918e9c96cd?uploadId=68d650aad73ec60008f93452 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:36:58,503 [256] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8zcx-azgkwu-13r9', 'x-amz-id-2': 'mg0l8zcx-azgkwu-13r9', 'Date': 'Fri, 26 Sep 2025 08:36:58 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:58,503 [256] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:58,503 [256] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,503 [256] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:58,503 [256] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,503 [256] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l8zcx-azgkwu-13r9', 'HostId': 'mg0l8zcx-azgkwu-13r9', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8zcx-azgkwu-13r9', 'x-amz-id-2': 'mg0l8zcx-azgkwu-13r9', 'date': 'Fri, 26 Sep 2025 08:36:58 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:36:58,503 [256] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 240941d9-67d5-46de-b631-1a3a0aa7a109 took 0.20906829833984375 seconds gunicorn-registry stdout | 2025-09-26 08:36:58,504 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['240941d9-67d5-46de-b631-1a3a0aa7a109', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:58,506 [256] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, '240941d9-67d5-46de-b631-1a3a0aa7a109', 241, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwZDZkNWRkNjc1NzA0YzQ5MTFmNjgxNTY2YWFjNTk2MzVhOWIxODcwNWU2YzYwIl19fTEzZjJkN2RhMzkyYzIxZTEAAAAAAAAAAAYAAAAAAADZeP9FY53grgyU0TFJxLO/daYz/aThoZLfkHyOxfdpHpRiLg==', 9, '{"chunks": [["uploads/2e639152-046e-4e5c-9ab9-da08bfba87d6", 0, 241]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 36, 57, 963829), None, None, 36]) gunicorn-registry stdout | 2025-09-26 08:36:58,507 [256] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:58,507 [256] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:58,507 [256] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:58,508 [256] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:58,508 [256] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e'} gunicorn-registry stdout | 2025-09-26 08:36:58,508 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,508 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,508 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,509 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,509 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,509 [256] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,509 [256] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,509 [256] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:58,509 [256] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:58,509 [256] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:58,509 [256] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:58,509 [256] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,509 [256] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,509 [256] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,509 [256] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:58,510 [256] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,510 [256] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,510 [256] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,510 [256] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,510 [256] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:58,510 [256] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083658Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:58,510 [256] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083658Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 0803c58ec5eb3816c044e543ebc5b166791c2771f9a5b04ca59eab4ac88e0d63 gunicorn-registry stdout | 2025-09-26 08:36:58,510 [256] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | f9a703c027e7c59c50e36a883433de1e456a77eff4846816dd7c84c2c90aeaeb gunicorn-registry stdout | 2025-09-26 08:36:58,511 [256] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,511 [256] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:58,511 [256] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:58,517 [256] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:36:58,517 [256] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8zdd-b90z0p-c9y', 'x-amz-id-2': 'mg0l8zdd-b90z0p-c9y', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:58 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:58,517 [256] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:58,519 [256] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,519 [256] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:58,519 [256] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,519 [256] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:36:58,519 [256] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:36:58,519 [256] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e gunicorn-registry stdout | 2025-09-26 08:36:58,520 [256] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:58,520 [256] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:58,520 [256] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:58,520 [256] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:36:58,521 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,521 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,521 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,521 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,521 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,521 [256] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,521 [256] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,521 [256] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:58,521 [256] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:58,521 [256] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:58,521 [256] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:58,521 [256] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,521 [256] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,521 [256] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,521 [256] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/2e639152-046e-4e5c-9ab9-da08bfba87d6', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/2e639152-046e-4e5c-9ab9-da08bfba87d6', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/2e639152-046e-4e5c-9ab9-da08bfba87d6', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/2e639152-046e-4e5c-9ab9-da08bfba87d6'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:58,522 [256] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,522 [256] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,522 [256] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,522 [256] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,522 [256] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,522 [256] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:58,522 [256] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/2e639152-046e-4e5c-9ab9-da08bfba87d6 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083658Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:58,522 [256] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083658Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 3c951d2b78b6e884f4847716da681f7b266dd3c0650f61f13e1ff2810bd4d04c gunicorn-registry stdout | 2025-09-26 08:36:58,522 [256] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 3948fe1a0237dda3c5b080414093770cde8c624b4d90b181faf973f13da6a5b5 gunicorn-registry stdout | 2025-09-26 08:36:58,523 [256] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,523 [256] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,523 [256] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:58,523 [256] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:58,527 [256] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/2e639152-046e-4e5c-9ab9-da08bfba87d6 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:58,528 [256] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8zdo-bfrdem-1825', 'x-amz-id-2': 'mg0l8zdo-bfrdem-1825', 'ETag': '"517b0a2657a6f159dbb0c68ae54f1307-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:58 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:36:58 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:58,528 [256] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:58,528 [256] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,529 [256] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:58,529 [256] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,529 [256] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:36:58,529 [256] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:36:58,529 [256] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:36:58,529 [256] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:36:58,529 [256] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/2e639152-046e-4e5c-9ab9-da08bfba87d6'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 'extra_args': {}, 'callbacks': [], 'size': 241} gunicorn-registry stdout | 2025-09-26 08:36:58,530 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,530 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,530 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,530 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,530 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,530 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,530 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,530 [256] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,530 [256] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,530 [256] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,530 [256] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:58,530 [256] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:58,530 [256] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:58,530 [256] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:58,531 [256] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,531 [256] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,531 [256] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,531 [256] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/2e639152-046e-4e5c-9ab9-da08bfba87d6', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/2e639152-046e-4e5c-9ab9-da08bfba87d6', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:58,531 [256] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,531 [256] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,531 [256] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,531 [256] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,531 [256] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,531 [256] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:58,531 [256] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/2e639152-046e-4e5c-9ab9-da08bfba87d6 gunicorn-registry stdout | x-amz-date:20250926T083658Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:58,532 [256] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083658Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 631a411b09d83645aebcc72ed9422674c02bd30c179e9561128f4f2a0e78bca5 gunicorn-registry stdout | 2025-09-26 08:36:58,532 [256] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | ba3df148d69cd9771c64013835ceb946012d3e439e98794a7d879958e40df090 gunicorn-registry stdout | 2025-09-26 08:36:58,532 [256] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,532 [256] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,532 [256] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:58,532 [256] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:58,532 [256] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:58,559 [256] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:36:58,559 [256] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l8zdx-bl95dq-10zn', 'x-amz-id-2': 'mg0l8zdx-bl95dq-10zn', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:36:58 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:58,559 [256] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:36:58.000Z"517b0a2657a6f159dbb0c68ae54f1307-1"' gunicorn-registry stdout | 2025-09-26 08:36:58,560 [256] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,560 [256] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:36:58,560 [256] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:58,560 [256] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:58,560 [256] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:36:58,561 [256] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 240941d9-67d5-46de-b631-1a3a0aa7a109 with digest sha256:a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e took 0.04135775566101074 seconds gunicorn-registry stdout | 2025-09-26 08:36:58,561 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['240941d9-67d5-46de-b631-1a3a0aa7a109', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:58,562 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "imagestoragelocation" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:36:58,563 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:58,564 [256] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['42a7e295-1848-4237-a4e3-c28b60bf18b0', 241, None, True, True, 'sha256:a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e']) gunicorn-registry stdout | 2025-09-26 08:36:58,565 [256] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [37, 9]) gunicorn-registry stdout | 2025-09-26 08:36:58,566 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:58,566 [256] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [2, 37, datetime.datetime(2025, 9, 26, 8, 36, 58, 566557), datetime.datetime(2025, 9, 26, 9, 36, 58, 566537)]) gunicorn-registry stdout | 2025-09-26 08:36:58,567 [256] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [36]) gunicorn-registry stdout | 2025-09-26 08:36:58,569 [256] [DEBUG] [app] Ending request: urn:request:3a0c8eb2-5eb5-42f4-b507-c0d4b8675cb7 (/v2/testorg/alpine/blobs/uploads/240941d9-67d5-46de-b631-1a3a0aa7a109) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:3a0c8eb2-5eb5-42f4-b507-c0d4b8675cb7', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/240941d9-67d5-46de-b631-1a3a0aa7a109?digest=sha256:a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 'path': '/v2/testorg/alpine/blobs/uploads/240941d9-67d5-46de-b631-1a3a0aa7a109', 'parameters': {'digest': 'sha256:a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:58,569 [256] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:58,569 [256] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:58 +0000] "PUT /v2/testorg/alpine/blobs/uploads/240941d9-67d5-46de-b631-1a3a0aa7a109?digest=sha256%3Aa1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.288 1849 0.288) gunicorn-registry stdout | 2025-09-26 08:36:58,569 [256] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:58 +0000] "PUT /v2/testorg/alpine/blobs/uploads/240941d9-67d5-46de-b631-1a3a0aa7a109?digest=sha256%3Aa1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e HTTP/1.1" 201 0 "-" "skopeo/1.14.5" gunicorn-registry stdout | 2025-09-26 08:36:58,956 [251] [DEBUG] [app] Starting request: urn:request:52039a55-96eb-47c7-bda3-55293cbc88b5 (/v2/testorg/alpine/blobs/sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:58,956 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:58,956 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:58,956 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:58,957 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:58,957 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:58,957 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:58,957 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:58,957 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:58,958 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:58,960 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:58,961 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:58,961 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39_2 gunicorn-registry stdout | 2025-09-26 08:36:58,961 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:58,962 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:58,963 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:58,963 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:58,965 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:58,966 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:58,967 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39_2: None gunicorn-registry stdout | 2025-09-26 08:36:58,967 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39_2: None gunicorn-registry stdout | 2025-09-26 08:36:58,967 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:58,968 [251] [DEBUG] [app] Ending request: urn:request:52039a55-96eb-47c7-bda3-55293cbc88b5 (/v2/testorg/alpine/blobs/sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:52039a55-96eb-47c7-bda3-55293cbc88b5', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39', 'path': '/v2/testorg/alpine/blobs/sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:58,968 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:58,968 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:58,968 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:58 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:58 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.013 1714 0.013) gunicorn-registry stdout | 2025-09-26 08:36:59,206 [251] [DEBUG] [app] Starting request: urn:request:f4b372b2-3a93-4de4-b20f-73eceecfe309 (/v2/testorg/alpine/blobs/sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:59,206 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:59,206 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:59,206 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:59,207 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:59,207 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:59,207 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:59,208 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:59,208 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:59,209 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:59,210 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:59,211 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:36:59,211 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39_2 gunicorn-registry stdout | 2025-09-26 08:36:59,211 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39_2; calling loader gunicorn-registry stdout | 2025-09-26 08:36:59,212 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:59,213 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:59,214 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:59,216 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:59,217 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:59,218 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39_2: None gunicorn-registry stdout | 2025-09-26 08:36:59,218 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39_2: None gunicorn-registry stdout | 2025-09-26 08:36:59,218 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:36:59,218 [251] [DEBUG] [app] Ending request: urn:request:f4b372b2-3a93-4de4-b20f-73eceecfe309 (/v2/testorg/alpine/blobs/sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:f4b372b2-3a93-4de4-b20f-73eceecfe309', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39', 'path': '/v2/testorg/alpine/blobs/sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:36:59,218 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:59,218 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:59,218 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:59 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:59 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.014 1714 0.014) gunicorn-registry stdout | 2025-09-26 08:36:59,340 [251] [DEBUG] [app] Starting request: urn:request:5ccb2791-aa96-4d97-aedd-e8cc5f832500 (/v2/testorg/alpine/blobs/uploads/fb5ac9fb-7557-4785-ad94-9cbd6fb12427) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:36:59,340 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'fb5ac9fb-7557-4785-ad94-9cbd6fb12427', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:36:59,340 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:59,340 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:36:59,341 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:36:59,341 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:36:59,341 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:36:59,341 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:36:59,341 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:36:59,342 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:59,343 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:59,344 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:59,345 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:59,346 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:59,347 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:59,348 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:59,350 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:36:59,351 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['fb5ac9fb-7557-4785-ad94-9cbd6fb12427', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:59,351 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:36:59,352 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:36:59,352 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:59,353 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:59,353 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:36:59,353 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,353 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,353 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,353 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,353 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:59,353 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,353 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,353 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:59,353 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:59,353 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:59,353 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:59,353 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:59,354 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,354 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,354 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,354 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:59,354 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:59,354 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:59,354 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,354 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,354 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:59,354 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083659Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:36:59,354 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083659Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | c5e8c8740e59ff0b59507907906452682efb36b5ddae90a946bc08c6c43a2a6a gunicorn-registry stdout | 2025-09-26 08:36:59,354 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 69aee1048848d9d42e233814ee27eeb15490f7992735803c52909a652fb14e86 gunicorn-registry stdout | 2025-09-26 08:36:59,354 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,354 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:59,355 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:59,361 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:36:59,361 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l900s-8nm0sg-kgp', 'x-amz-id-2': 'mg0l900s-8nm0sg-kgp', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:36:59 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:59,361 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb68d650abd73ec60008f93455' gunicorn-registry stdout | 2025-09-26 08:36:59,361 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,361 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:59,361 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:59,361 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l900s-8nm0sg-kgp', 'HostId': 'mg0l900s-8nm0sg-kgp', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l900s-8nm0sg-kgp', 'x-amz-id-2': 'mg0l900s-8nm0sg-kgp', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:36:59 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb', 'UploadId': '68d650abd73ec60008f93455'} gunicorn-registry stdout | 2025-09-26 08:36:59,361 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-web stdout | 2025-09-26 08:36:59,530 [250] [DEBUG] [app] Starting request: urn:request:0c3cdfb8-f633-43dc-ad67-f63a02c03c41 (/_storage_proxy_auth) {'X-Forwarded-For': '3.147.184.98'} gunicorn-web stdout | 2025-09-26 08:36:59,530 [250] [DEBUG] [storage.downloadproxy] Got token b'eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODE5LCJpYXQiOjE3NTg4NzU4MTksImV4cCI6MTc1ODg3NjQxOSwic3ViIjoic3RvcmFnZXByb3h5IiwiYWNjZXNzIjpbeyJ0eXBlIjoic3RvcmFnZXByb3h5IiwidXJpIjoicXVheS1kYXRhc3RvcmUtZTI5YzM5OTQtNjJlYi00ZTlmLTk1NTAtYmFhMTFmODc0MDg0L2RhdGFzdG9yYWdlL3JlZ2lzdHJ5L3NoYTI1Ni8zMy8zM2EyNDMzZDg5ZGY3ZTc5NGQxNjU1ZmNlNzBkNzAzMWQ4MDY1Yzk3OThiZGMyOTMxZjdjOThmY2M4ZDMxMGQwP0FXU0FjY2Vzc0tleUlkPUtxVUFodjYwQUdsQUREcTBNY0taJlNpZ25hdHVyZT0zUjF0bjRUdWZuWUJiTCUyQnZURFdKJTJCc0Y4cFo0JTNEJkV4cGlyZXM9MTc1ODg3NjQxOSIsImhvc3QiOiJzMy5vcGVuc2hpZnQtc3RvcmFnZS5zdmMuY2x1c3Rlci5sb2NhbDo0NDMiLCJzY2hlbWUiOiJodHRwcyJ9XSwiY29udGV4dCI6e319.CGLqyotOd4W4Ur9sSWH021nul-l9wtN_jlsFmOVh6mBsFH2YwGOemw76U_5F-4BmVKd8u84beTrNLCQNFy1C93MiYnGvSaobf4tYfolBAHRG4WwCt7gGg1zV0RwPz3O6482fU_ZCN_UVHndWurrrHbVC5YwUsy3dat9VaZlKpLpAJmUcWeBfX-HJGx8ArNIv2qaTfRRItnZZO4ICCI5Ga0MuRHVfr4sfkix5ie4RKqXi1bouCThQPT1Z7Fccu8MC4J9NNZfd-d2cfPrHE4g58atRqs525gTFKjyVbUK8GEO76RCXXeW02ZHFNt47TlLETVdg7Qvb7Qw78VX-0wcUvQ' for storage proxy auth request /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ERTVMQ0pwWVhRaU9qRTNOVGc0TnpVNE1Ua3NJbVY0Y0NJNk1UYzFPRGczTmpReE9Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4ek15OHpNMkV5TkRNelpEZzVaR1kzWlRjNU5HUXhOalUxWm1ObE56QmtOekF6TVdRNE1EWTFZemszT1RoaVpHTXlPVE14Wmpkak9UaG1ZMk00WkRNeE1HUXdQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDB6VWpGMGJqUlVkV1p1V1VKaVRDVXlRblpVUkZkS0pUSkNjMFk0Y0ZvMEpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qUXhPU0lzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5DR0xxeW90T2Q0VzRVcjlzU1dIMDIxbnVsLWw5d3ROX2psc0ZtT1ZoNm1Cc0ZIMll3R09lbXc3NlVfNUYtNEJtVktkOHU4NGJlVHJOTENRTkZ5MUM5M01pWW5HdlNhb2JmNHRZZm9sQkFIUkc0V3dDdDdnR2cxelYwUndQejNPNjQ4MmZVX1pDTl9VVkhuZFd1cnJySGJWQzVZd1VzeTNkYXQ5VmFabEtwTHBBSm1VY1dlQmZYLUhKR3g4QXJOSXYycWFUZlJSSXRuWlpPNElDQ0k1R2EwTXVSSFZmcjRzZmtpeDVpZTRSS3FYaTFib3VDVGhRUFQxWjdGY2N1OE1DNEo5Tk5aZmQtZDJjZlBySEU0ZzU4YXRScXM1MjVnVEZLanlWYlVLOEdFTzc2UkNYWGVXMDJaSEZOdDQ3VGxMRVRWZGc3UXZiN1F3NzhWWC0wd2NVdlE=/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/33/33a2433d89df7e794d1655fce70d7031d8065c9798bdc2931f7c98fcc8d310d0?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=3R1tn4TufnYBbL%2BvTDWJ%2BsF8pZ4%3D&Expires=1758876419 with parts ['ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ERTVMQ0pwWVhRaU9qRTNOVGc0TnpVNE1Ua3NJbVY0Y0NJNk1UYzFPRGczTmpReE9Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4ek15OHpNMkV5TkRNelpEZzVaR1kzWlRjNU5HUXhOalUxWm1ObE56QmtOekF6TVdRNE1EWTFZemszT1RoaVpHTXlPVE14Wmpkak9UaG1ZMk00WkRNeE1HUXdQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDB6VWpGMGJqUlVkV1p1V1VKaVRDVXlRblpVUkZkS0pUSkNjMFk0Y0ZvMEpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qUXhPU0lzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5DR0xxeW90T2Q0VzRVcjlzU1dIMDIxbnVsLWw5d3ROX2psc0ZtT1ZoNm1Cc0ZIMll3R09lbXc3NlVfNUYtNEJtVktkOHU4NGJlVHJOTENRTkZ5MUM5M01pWW5HdlNhb2JmNHRZZm9sQkFIUkc0V3dDdDdnR2cxelYwUndQejNPNjQ4MmZVX1pDTl9VVkhuZFd1cnJySGJWQzVZd1VzeTNkYXQ5VmFabEtwTHBBSm1VY1dlQmZYLUhKR3g4QXJOSXYycWFUZlJSSXRuWlpPNElDQ0k1R2EwTXVSSFZmcjRzZmtpeDVpZTRSS3FYaTFib3VDVGhRUFQxWjdGY2N1OE1DNEo5Tk5aZmQtZDJjZlBySEU0ZzU4YXRScXM1MjVnVEZLanlWYlVLOEdFTzc2UkNYWGVXMDJaSEZOdDQ3VGxMRVRWZGc3UXZiN1F3NzhWWC0wd2NVdlE=', 'https', 's3.openshift-storage.svc.cluster.local:443', 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/33/33a2433d89df7e794d1655fce70d7031d8065c9798bdc2931f7c98fcc8d310d0?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=3R1tn4TufnYBbL%2BvTDWJ%2BsF8pZ4%3D&Expires=1758876419'] gunicorn-web stdout | 2025-09-26 08:36:59,541 [250] [DEBUG] [app] Ending request: urn:request:0c3cdfb8-f633-43dc-ad67-f63a02c03c41 (/_storage_proxy_auth) {'endpoint': '_storage_proxy_auth', 'request_id': 'urn:request:0c3cdfb8-f633-43dc-ad67-f63a02c03c41', 'remote_addr': '3.147.184.98', 'http_method': 'GET', 'original_url': 'https://web_app_server/_storage_proxy_auth', 'path': '/_storage_proxy_auth', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'Go-http-client/1.1'} gunicorn-web stdout | 2025-09-26 08:36:59,542 [250] [INFO] [gunicorn.access] 3.147.184.98 - - [26/Sep/2025:08:36:59 +0000] "GET /_storage_proxy_auth HTTP/1.0" 200 2 "-" "Go-http-client/1.1" gunicorn-registry stdout | 2025-09-26 08:36:59,640 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:36:59,640 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:36:59,640 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb', 'UploadId': '68d650abd73ec60008f93455', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89f9260>, 'ContentLength': 3513811} gunicorn-registry stdout | 2025-09-26 08:36:59,640 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,641 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,641 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,641 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,641 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:59,641 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,641 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,641 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:59,641 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:59,641 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:59,641 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:59,641 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:59,641 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,648 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,648 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:36:59,648 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,648 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,648 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb', 'query_string': {'uploadId': '68d650abd73ec60008f93455', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '3513811', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': '68JmgEoddRMZxitu1f7TtQ==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b89f9260>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb?uploadId=68d650abd73ec60008f93455&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb', 'UploadId': '68d650abd73ec60008f93455', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89f9260>, 'ContentLength': 3513811}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:59,648 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:59,648 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:59,648 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,648 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,649 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:59,649 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb gunicorn-registry stdout | partNumber=1&uploadId=68d650abd73ec60008f93455 gunicorn-registry stdout | content-length:3513811 gunicorn-registry stdout | content-md5:68JmgEoddRMZxitu1f7TtQ== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083659Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:36:59,649 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083659Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 2b125f56d0c8304f97a799e28c50ff03b6cec9a7c0f402bede8d3717162d38cb gunicorn-registry stdout | 2025-09-26 08:36:59,649 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 55564e1f3685f87f2c8765b674f20fc6e51c70c82d16859c83e9d73004ab78d7 gunicorn-registry stdout | 2025-09-26 08:36:59,649 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,649 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:59,649 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:59,650 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:36:59,664 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. namespacegcworker stdout | 2025-09-26 08:36:59,791 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:36:59,791 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:08.793810+00:00 (in 9.002194 seconds) namespacegcworker stdout | 2025-09-26 08:36:59,791 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:59 GMT)" (scheduled at 2025-09-26 08:36:59.791127+00:00) namespacegcworker stdout | 2025-09-26 08:36:59,791 [66] [DEBUG] [workers.queueworker] Getting work item from queue. namespacegcworker stdout | 2025-09-26 08:36:59,792 [66] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 36, 59, 791991), True, datetime.datetime(2025, 9, 26, 8, 36, 59, 791991), 0, 'namespacegc/%', 50, 1, 0]) namespacegcworker stdout | 2025-09-26 08:36:59,800 [66] [DEBUG] [workers.queueworker] No more work. namespacegcworker stdout | 2025-09-26 08:36:59,800 [66] [DEBUG] [data.database] Disconnecting from database. namespacegcworker stdout | 2025-09-26 08:36:59,800 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:37:59 GMT)" executed successfully nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:36:59 +0000] "GET /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ERTVMQ0pwWVhRaU9qRTNOVGc0TnpVNE1Ua3NJbVY0Y0NJNk1UYzFPRGczTmpReE9Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4ek15OHpNMkV5TkRNelpEZzVaR1kzWlRjNU5HUXhOalUxWm1ObE56QmtOekF6TVdRNE1EWTFZemszT1RoaVpHTXlPVE14Wmpkak9UaG1ZMk00WkRNeE1HUXdQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDB6VWpGMGJqUlVkV1p1V1VKaVRDVXlRblpVUkZkS0pUSkNjMFk0Y0ZvMEpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qUXhPU0lzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5DR0xxeW90T2Q0VzRVcjlzU1dIMDIxbnVsLWw5d3ROX2psc0ZtT1ZoNm1Cc0ZIMll3R09lbXc3NlVfNUYtNEJtVktkOHU4NGJlVHJOTENRTkZ5MUM5M01pWW5HdlNhb2JmNHRZZm9sQkFIUkc0V3dDdDdnR2cxelYwUndQejNPNjQ4MmZVX1pDTl9VVkhuZFd1cnJySGJWQzVZd1VzeTNkYXQ5VmFabEtwTHBBSm1VY1dlQmZYLUhKR3g4QXJOSXYycWFUZlJSSXRuWlpPNElDQ0k1R2EwTXVSSFZmcjRzZmtpeDVpZTRSS3FYaTFib3VDVGhRUFQxWjdGY2N1OE1DNEo5Tk5aZmQtZDJjZlBySEU0ZzU4YXRScXM1MjVnVEZLanlWYlVLOEdFTzc2UkNYWGVXMDJaSEZOdDQ3VGxMRVRWZGc3UXZiN1F3NzhWWC0wd2NVdlE=/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/33/33a2433d89df7e794d1655fce70d7031d8065c9798bdc2931f7c98fcc8d310d0?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=3R1tn4TufnYBbL%2BvTDWJ%2BsF8pZ4%3D&Expires=1758876419 HTTP/1.1" 200 3720832 "-" "Go-http-client/1.1" (0.341 2415 0.328) gunicorn-registry stdout | 2025-09-26 08:36:59,974 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb?uploadId=68d650abd73ec60008f93455&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:36:59,975 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l909c-dqwfdi-9b', 'x-amz-id-2': 'mg0l909c-dqwfdi-9b', 'ETag': '"ebc266804a1d751319c62b6ed5fed3b5"', 'Date': 'Fri, 26 Sep 2025 08:36:59 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:36:59,975 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:36:59,975 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,975 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:59,975 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:59,975 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l909c-dqwfdi-9b', 'HostId': 'mg0l909c-dqwfdi-9b', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l909c-dqwfdi-9b', 'x-amz-id-2': 'mg0l909c-dqwfdi-9b', 'etag': '"ebc266804a1d751319c62b6ed5fed3b5"', 'date': 'Fri, 26 Sep 2025 08:36:59 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"ebc266804a1d751319c62b6ed5fed3b5"'} gunicorn-registry stdout | 2025-09-26 08:36:59,975 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb', 'UploadId': '68d650abd73ec60008f93455', 'MultipartUpload': {'Parts': [{'ETag': '"ebc266804a1d751319c62b6ed5fed3b5"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:36:59,975 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,975 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,975 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,975 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:59,976 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,976 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,976 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:59,976 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:36:59,976 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:36:59,976 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:36:59,976 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:36:59,976 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,976 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,976 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,976 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb', 'query_string': {'uploadId': '68d650abd73ec60008f93455'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"ebc266804a1d751319c62b6ed5fed3b5"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb?uploadId=68d650abd73ec60008f93455', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb', 'UploadId': '68d650abd73ec60008f93455', 'MultipartUpload': {'Parts': [{'ETag': '"ebc266804a1d751319c62b6ed5fed3b5"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:36:59,976 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:59,976 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:59,976 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,976 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,977 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:36:59,977 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb gunicorn-registry stdout | uploadId=68d650abd73ec60008f93455 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:3b35536cfd7e7997cb1ebc8973199c7e3d50795f3d4c1bd36789dad0d4f519e3 gunicorn-registry stdout | x-amz-date:20250926T083659Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 3b35536cfd7e7997cb1ebc8973199c7e3d50795f3d4c1bd36789dad0d4f519e3 gunicorn-registry stdout | 2025-09-26 08:36:59,977 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083659Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 54534f688b170ca777050fed9b69516a0e00b50336d9d0bfe159011afb0229be gunicorn-registry stdout | 2025-09-26 08:36:59,977 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 9162b7858bbd6325429cbd8a0992f51215765c06388b395105e7b9b26be3fe83 gunicorn-registry stdout | 2025-09-26 08:36:59,977 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,977 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:36:59,978 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:36:59,994 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb?uploadId=68d650abd73ec60008f93455 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:36:59,994 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l90i3-2feajv-qi6', 'x-amz-id-2': 'mg0l90i3-2feajv-qi6', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:36:59 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:36:59,994 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb"db7c07c311eb71db7cb910162089cda1-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb?uploadId=68d650abd73ec60008f93455' gunicorn-registry stdout | 2025-09-26 08:36:59,994 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,994 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:36:59,994 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:36:59,994 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:36:59,994 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l90i3-2feajv-qi6', 'HostId': 'mg0l90i3-2feajv-qi6', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l90i3-2feajv-qi6', 'x-amz-id-2': 'mg0l90i3-2feajv-qi6', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:36:59 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb?uploadId=68d650abd73ec60008f93455', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb', 'ETag': '"db7c07c311eb71db7cb910162089cda1-1"'} gunicorn-registry stdout | 2025-09-26 08:36:59,994 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:36:59,995 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:36:59,996 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 3513811 bytes to blob fb5ac9fb-7557-4785-ad94-9cbd6fb12427 took 0.6438887119293213 seconds gunicorn-registry stdout | 2025-09-26 08:36:59,997 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['fb5ac9fb-7557-4785-ad94-9cbd6fb12427', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:36:59,998 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'fb5ac9fb-7557-4785-ad94-9cbd6fb12427', 3513811, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENw5S7fV/7fAAAA//+u13beAEJwAFTtjv9H/K+jgO9TxtPxx27ff13x/361epQ7/lBX1N+7/488DX+YvJ//dJe73BMAAAAAAAAAAO6sAQAAAACTxa5BT72bBPDeuqQFF0mSn/XlzT7KIA53Ki0R54zvXJRiLg==', 9, '{"chunks": [["uploads/52cf0717-aabe-431a-88c5-a12d7bbf7beb", 0, 3513811]]}', 1, 7356928, datetime.datetime(2025, 9, 26, 8, 36, 59, 292147), None, None, 37]) gunicorn-registry stdout | 2025-09-26 08:37:00,000 [251] [DEBUG] [app] Ending request: urn:request:5ccb2791-aa96-4d97-aedd-e8cc5f832500 (/v2/testorg/alpine/blobs/uploads/fb5ac9fb-7557-4785-ad94-9cbd6fb12427) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:5ccb2791-aa96-4d97-aedd-e8cc5f832500', 'remote_addr': '10.129.4.11', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/fb5ac9fb-7557-4785-ad94-9cbd6fb12427', 'path': '/v2/testorg/alpine/blobs/uploads/fb5ac9fb-7557-4785-ad94-9cbd6fb12427', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:00,000 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:00,000 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:00,000 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:36:59 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/fb5ac9fb-7557-4785-ad94-9cbd6fb12427 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:00 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/fb5ac9fb-7557-4785-ad94-9cbd6fb12427 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.663 3515587 0.661) gunicorn-registry stdout | 2025-09-26 08:37:00,365 [255] [DEBUG] [app] Starting request: urn:request:ca1072b3-3399-4097-bb76-0e2810ec539c (/v2/testorg/alpine/blobs/sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:00,365 [255] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:00,365 [255] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:00,365 [255] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:00,366 [255] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:00,366 [255] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:00,366 [255] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:00,367 [255] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:00,367 [255] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:37:00,367 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,369 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,370 [255] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:00,370 [255] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2_2 gunicorn-registry stdout | 2025-09-26 08:37:00,370 [255] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:00,372 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,374 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,375 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,376 [255] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,377 [255] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,378 [255] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2_2: None gunicorn-registry stdout | 2025-09-26 08:37:00,378 [255] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2_2: None gunicorn-registry stdout | 2025-09-26 08:37:00,378 [255] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:00,378 [255] [DEBUG] [app] Ending request: urn:request:ca1072b3-3399-4097-bb76-0e2810ec539c (/v2/testorg/alpine/blobs/sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:ca1072b3-3399-4097-bb76-0e2810ec539c', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'path': '/v2/testorg/alpine/blobs/sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:00,378 [255] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:00,378 [255] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:00,378 [255] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:00 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:00 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.014 1714 0.014) gunicorn-registry stdout | 2025-09-26 08:37:00,418 [251] [DEBUG] [app] Starting request: urn:request:e9ee7f3c-4172-4a68-888d-a254d280a145 (/v2/testorg/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:00,419 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:00,419 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:00,419 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:00,420 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:00,420 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:00,420 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:00,420 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:00,420 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:37:00,421 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,423 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,423 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,425 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,426 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,426 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,428 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:37:00,429 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,430 [251] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [2, 'acf4e4eb-f63f-41c8-93ab-ef21d8502dfc', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 37, 0, 429741)]) gunicorn-registry stdout | 2025-09-26 08:37:00,432 [251] [DEBUG] [app] Ending request: urn:request:e9ee7f3c-4172-4a68-888d-a254d280a145 (/v2/testorg/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:e9ee7f3c-4172-4a68-888d-a254d280a145', 'remote_addr': '10.129.4.11', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/', 'path': '/v2/testorg/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:00,432 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:00,432 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:00,432 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:00 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:00 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.014 1693 0.014) gunicorn-registry stdout | 2025-09-26 08:37:00,472 [251] [DEBUG] [app] Starting request: urn:request:dcd3aa60-df53-4807-9e4c-cdc7b99410ae (/v2/testorg/alpine/blobs/uploads/acf4e4eb-f63f-41c8-93ab-ef21d8502dfc) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:00,472 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'acf4e4eb-f63f-41c8-93ab-ef21d8502dfc', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:00,472 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:00,472 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:00,473 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:00,473 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:00,473 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:00,473 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:00,473 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:37:00,474 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,475 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,476 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,477 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,478 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,479 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,480 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,481 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:37:00,482 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['acf4e4eb-f63f-41c8-93ab-ef21d8502dfc', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,483 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:00,483 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:00,483 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:00,484 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:00,484 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:00,484 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,484 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,484 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,484 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,484 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,484 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,484 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,484 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,484 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:00,484 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:00,484 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:00,484 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:00,485 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,485 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,485 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,485 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:00,485 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,485 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,485 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,485 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,485 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:00,485 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083700Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:00,485 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083700Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 66c6ec0232d0e4b3e424dd0dfa37b6d83393a85b5fb5aba35df58e593e24d627 gunicorn-registry stdout | 2025-09-26 08:37:00,485 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 53ac634c9d505e924f663a0369b106661893875faf9a4e9bbeaaea8025b2e24c gunicorn-registry stdout | 2025-09-26 08:37:00,485 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,485 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:00,486 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:00,493 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:00,493 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l90w8-auaaax-s5p', 'x-amz-id-2': 'mg0l90w8-auaaax-s5p', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:00 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:00,493 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af5168d650acd73ec60008f9345e' gunicorn-registry stdout | 2025-09-26 08:37:00,493 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,493 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:00,493 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,494 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l90w8-auaaax-s5p', 'HostId': 'mg0l90w8-auaaax-s5p', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l90w8-auaaax-s5p', 'x-amz-id-2': 'mg0l90w8-auaaax-s5p', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:00 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51', 'UploadId': '68d650acd73ec60008f9345e'} gunicorn-registry stdout | 2025-09-26 08:37:00,494 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:00,494 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:00,494 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:00,494 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51', 'UploadId': '68d650acd73ec60008f9345e', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89a6160>, 'ContentLength': 584} gunicorn-registry stdout | 2025-09-26 08:37:00,494 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51', 'query_string': {'uploadId': '68d650acd73ec60008f9345e', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '584', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'sza8pZUmpQbdzK159FRWRw==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b89a6160>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51?uploadId=68d650acd73ec60008f9345e&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51', 'UploadId': '68d650acd73ec60008f9345e', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89a6160>, 'ContentLength': 584}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,495 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,496 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:00,496 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51 gunicorn-registry stdout | partNumber=1&uploadId=68d650acd73ec60008f9345e gunicorn-registry stdout | content-length:584 gunicorn-registry stdout | content-md5:sza8pZUmpQbdzK159FRWRw== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083700Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:00,496 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083700Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 600f015f1cbd843c4d0197991ac4174a197484288c635ca846cd5491c455511e gunicorn-registry stdout | 2025-09-26 08:37:00,496 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | ea48472b271693ec8d59fc522f8edb82445e41ec3b4b47af4cb5378e97ea8956 gunicorn-registry stdout | 2025-09-26 08:37:00,496 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,497 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:00,497 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:00,497 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:37:00,498 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:37:00,578 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51?uploadId=68d650acd73ec60008f9345e&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:00,579 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l90wi-b085ko-g2v', 'x-amz-id-2': 'mg0l90wi-b085ko-g2v', 'ETag': '"b336bca59526a506ddccad79f4545647"', 'Date': 'Fri, 26 Sep 2025 08:37:00 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:00,579 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:00,579 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,579 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:00,579 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,579 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l90wi-b085ko-g2v', 'HostId': 'mg0l90wi-b085ko-g2v', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l90wi-b085ko-g2v', 'x-amz-id-2': 'mg0l90wi-b085ko-g2v', 'etag': '"b336bca59526a506ddccad79f4545647"', 'date': 'Fri, 26 Sep 2025 08:37:00 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"b336bca59526a506ddccad79f4545647"'} gunicorn-registry stdout | 2025-09-26 08:37:00,579 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51', 'UploadId': '68d650acd73ec60008f9345e', 'MultipartUpload': {'Parts': [{'ETag': '"b336bca59526a506ddccad79f4545647"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:00,579 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,579 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,579 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,579 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,579 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,579 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,579 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,579 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:00,579 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:00,579 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:00,579 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:00,580 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,580 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,580 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,580 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51', 'query_string': {'uploadId': '68d650acd73ec60008f9345e'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"b336bca59526a506ddccad79f4545647"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51?uploadId=68d650acd73ec60008f9345e', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51', 'UploadId': '68d650acd73ec60008f9345e', 'MultipartUpload': {'Parts': [{'ETag': '"b336bca59526a506ddccad79f4545647"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:00,580 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,580 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,580 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,580 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,580 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:00,580 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51 gunicorn-registry stdout | uploadId=68d650acd73ec60008f9345e gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:6e882ef7afae77e926f807def752cb17b1dd41cef18bfab4f9f7b24b4da3e3be gunicorn-registry stdout | x-amz-date:20250926T083700Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 6e882ef7afae77e926f807def752cb17b1dd41cef18bfab4f9f7b24b4da3e3be gunicorn-registry stdout | 2025-09-26 08:37:00,580 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083700Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 63e1074e643da85fc79d89cea059c14274afb61b45c2cc91563755ce7d63479a gunicorn-registry stdout | 2025-09-26 08:37:00,581 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 48e8712dcddbfedfcebf9398035d4ca0588a7b6dd6e1cc5b316c50cd64e0f5b3 gunicorn-registry stdout | 2025-09-26 08:37:00,581 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,581 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:00,581 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:00,596 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51?uploadId=68d650acd73ec60008f9345e HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:00,597 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l90yu-ce7bb7-vd5', 'x-amz-id-2': 'mg0l90yu-ce7bb7-vd5', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:00 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:00,597 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51"d79d1533d445974a6fac572ac13d1f99-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51?uploadId=68d650acd73ec60008f9345e' gunicorn-registry stdout | 2025-09-26 08:37:00,597 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,597 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,597 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:00,597 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,597 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l90yu-ce7bb7-vd5', 'HostId': 'mg0l90yu-ce7bb7-vd5', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l90yu-ce7bb7-vd5', 'x-amz-id-2': 'mg0l90yu-ce7bb7-vd5', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:00 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51?uploadId=68d650acd73ec60008f9345e', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51', 'ETag': '"d79d1533d445974a6fac572ac13d1f99-1"'} gunicorn-registry stdout | 2025-09-26 08:37:00,597 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:00,599 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:00,599 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 584 bytes to blob acf4e4eb-f63f-41c8-93ab-ef21d8502dfc took 0.11587810516357422 seconds gunicorn-registry stdout | 2025-09-26 08:37:00,600 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['acf4e4eb-f63f-41c8-93ab-ef21d8502dfc', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,601 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'acf4e4eb-f63f-41c8-93ab-ef21d8502dfc', 584, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwYTM4ZSJdfX1kMDZjNTg1YThjMjFiYzM5MDUzMTJhNWJlMDkwNWViYTc0ZDgwM2RlMGNhNjIxZWIyMjlmMDA3YggAAAAAAAAAABIAAAAAAAAKQAqtZXnMIV2UFhbuxOser3YtiDufWoXjSCk3jqAco5RiLg==', 9, '{"chunks": [["uploads/72856f13-e295-45fb-823d-96a59869af51", 0, 584]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 37, 0, 429741), None, None, 38]) gunicorn-registry stdout | 2025-09-26 08:37:00,603 [251] [DEBUG] [app] Ending request: urn:request:dcd3aa60-df53-4807-9e4c-cdc7b99410ae (/v2/testorg/alpine/blobs/uploads/acf4e4eb-f63f-41c8-93ab-ef21d8502dfc) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:dcd3aa60-df53-4807-9e4c-cdc7b99410ae', 'remote_addr': '10.129.4.11', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/acf4e4eb-f63f-41c8-93ab-ef21d8502dfc', 'path': '/v2/testorg/alpine/blobs/uploads/acf4e4eb-f63f-41c8-93ab-ef21d8502dfc', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:00,603 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:00,603 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:00,603 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:00 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/acf4e4eb-f63f-41c8-93ab-ef21d8502dfc HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:00 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/acf4e4eb-f63f-41c8-93ab-ef21d8502dfc HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.133 2356 0.132) gunicorn-registry stdout | 2025-09-26 08:37:00,644 [251] [DEBUG] [app] Starting request: urn:request:484cf1da-df9d-4530-b1b8-e5520d38aeae (/v2/testorg/alpine/blobs/uploads/acf4e4eb-f63f-41c8-93ab-ef21d8502dfc) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:00,644 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'acf4e4eb-f63f-41c8-93ab-ef21d8502dfc', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:00,644 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:00,644 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:00,645 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:00,645 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:00,645 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:00,645 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:00,645 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:37:00,646 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,647 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,648 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,649 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,650 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,651 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,652 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,653 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:37:00,654 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['acf4e4eb-f63f-41c8-93ab-ef21d8502dfc', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,655 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:00,655 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:00,655 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:00,656 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:00,656 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e3bc254b-ca1e-4fc1-b961-8cbf5df94c5e', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:00,656 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,656 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,656 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,656 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,656 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,656 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,656 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,656 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,656 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:00,656 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:00,656 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:00,656 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:00,656 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,656 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,656 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,657 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/e3bc254b-ca1e-4fc1-b961-8cbf5df94c5e?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e3bc254b-ca1e-4fc1-b961-8cbf5df94c5e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e3bc254b-ca1e-4fc1-b961-8cbf5df94c5e?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e3bc254b-ca1e-4fc1-b961-8cbf5df94c5e', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:00,657 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,657 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,657 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,657 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,657 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:00,657 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e3bc254b-ca1e-4fc1-b961-8cbf5df94c5e gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083700Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:00,657 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083700Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | f1bd960720420af56a4a40959156a4542c9b9f10217462f81b0141e4da927382 gunicorn-registry stdout | 2025-09-26 08:37:00,657 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 7ae10184072e8909c46cb85b70ecd0383bbe14b419fdd78215c80b0689576cce gunicorn-registry stdout | 2025-09-26 08:37:00,657 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,657 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:00,657 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:00,664 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e3bc254b-ca1e-4fc1-b961-8cbf5df94c5e?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:00,664 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l910z-dnwm47-5tg', 'x-amz-id-2': 'mg0l910z-dnwm47-5tg', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:00 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:00,664 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/e3bc254b-ca1e-4fc1-b961-8cbf5df94c5e68d650acd73ec60008f93464' gunicorn-registry stdout | 2025-09-26 08:37:00,664 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,664 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:00,664 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,665 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l910z-dnwm47-5tg', 'HostId': 'mg0l910z-dnwm47-5tg', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l910z-dnwm47-5tg', 'x-amz-id-2': 'mg0l910z-dnwm47-5tg', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:00 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e3bc254b-ca1e-4fc1-b961-8cbf5df94c5e', 'UploadId': '68d650acd73ec60008f93464'} gunicorn-registry stdout | 2025-09-26 08:37:00,665 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:00,666 [251] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e3bc254b-ca1e-4fc1-b961-8cbf5df94c5e', 'UploadId': '68d650acd73ec60008f93464'} gunicorn-registry stdout | 2025-09-26 08:37:00,666 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,666 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,666 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,666 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,666 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,666 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,666 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:00,666 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:00,666 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:00,666 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:00,667 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,667 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,667 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,667 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/e3bc254b-ca1e-4fc1-b961-8cbf5df94c5e', 'query_string': {'uploadId': '68d650acd73ec60008f93464'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e3bc254b-ca1e-4fc1-b961-8cbf5df94c5e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e3bc254b-ca1e-4fc1-b961-8cbf5df94c5e?uploadId=68d650acd73ec60008f93464', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e3bc254b-ca1e-4fc1-b961-8cbf5df94c5e', 'UploadId': '68d650acd73ec60008f93464'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:00,667 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,667 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,667 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,667 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,667 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:00,667 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e3bc254b-ca1e-4fc1-b961-8cbf5df94c5e gunicorn-registry stdout | uploadId=68d650acd73ec60008f93464 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083700Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:00,667 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083700Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 9bf385cf95e054dd08db537a1f14f04c6923ea5e06bf8b9e3be03b9ebec2de15 gunicorn-registry stdout | 2025-09-26 08:37:00,668 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 3d01d5bf7bffe6dab0f2c9d5e0a14965baa4bb07996f719e8556765f3e2db1ab gunicorn-registry stdout | 2025-09-26 08:37:00,668 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,668 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:00,668 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:00,675 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e3bc254b-ca1e-4fc1-b961-8cbf5df94c5e?uploadId=68d650acd73ec60008f93464 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:37:00,676 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9119-dubbek-fuw', 'x-amz-id-2': 'mg0l9119-dubbek-fuw', 'Date': 'Fri, 26 Sep 2025 08:37:00 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:00,676 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:00,676 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,676 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:00,676 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,676 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9119-dubbek-fuw', 'HostId': 'mg0l9119-dubbek-fuw', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9119-dubbek-fuw', 'x-amz-id-2': 'mg0l9119-dubbek-fuw', 'date': 'Fri, 26 Sep 2025 08:37:00 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:37:00,676 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob acf4e4eb-f63f-41c8-93ab-ef21d8502dfc took 0.021188735961914062 seconds gunicorn-registry stdout | 2025-09-26 08:37:00,677 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['acf4e4eb-f63f-41c8-93ab-ef21d8502dfc', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,679 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'acf4e4eb-f63f-41c8-93ab-ef21d8502dfc', 584, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwYTM4ZSJdfX1kMDZjNTg1YThjMjFiYzM5MDUzMTJhNWJlMDkwNWViYTc0ZDgwM2RlMGNhNjIxZWIyMjlmMDA3YggAAAAAAAAAABIAAAAAAAAKQAqtZXnMIV2UFhbuxOser3YtiDufWoXjSCk3jqAco5RiLg==', 9, '{"chunks": [["uploads/72856f13-e295-45fb-823d-96a59869af51", 0, 584]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 37, 0, 429741), None, None, 38]) gunicorn-registry stdout | 2025-09-26 08:37:00,680 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:00,680 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:00,680 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:00,681 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:00,681 [251] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2'} gunicorn-registry stdout | 2025-09-26 08:37:00,681 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,681 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,681 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,681 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,681 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,681 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,681 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,681 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:00,681 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:00,682 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:00,682 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:00,682 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,682 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,682 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,682 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:00,682 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,682 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,682 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,682 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,682 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:00,682 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083700Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:00,682 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083700Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | c8fd99b28fbeaab8c4e1f3bfd97220ff525ba812249e0e5c907b0ca22bcf22de gunicorn-registry stdout | 2025-09-26 08:37:00,683 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 64c7d7912542cb9e8a06e1a9d46419d131d92630ddaf1b6e899e4521bdfa2146 gunicorn-registry stdout | 2025-09-26 08:37:00,683 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,683 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:00,683 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:00,688 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:37:00,688 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l911o-e34ipy-16e6', 'x-amz-id-2': 'mg0l911o-e34ipy-16e6', 'Content-Type': 'application/xml', 'Content-Length': '339', 'Date': 'Fri, 26 Sep 2025 08:37:00 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:00,688 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:00,688 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,688 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:00,688 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,688 [251] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:37:00,688 [251] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:37:00,688 [251] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2 gunicorn-registry stdout | 2025-09-26 08:37:00,689 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:00,689 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:00,689 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:00,689 [251] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:37:00,689 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,689 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,689 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,689 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,689 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,689 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,689 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,689 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:00,690 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:00,690 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:00,690 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:00,690 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,690 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,690 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,690 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:00,690 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,690 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,690 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,690 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,690 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,690 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:00,690 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083700Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:00,690 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083700Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 16decb3c852d49d69947eb3cd7ba0c162d33a7578aed66dce424fd242314903a gunicorn-registry stdout | 2025-09-26 08:37:00,690 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 8db9459fd095c87809eb0407440884dd5741b1c7faf48a07d780066b3a0f20b9 gunicorn-registry stdout | 2025-09-26 08:37:00,691 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,691 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,691 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:00,691 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem notificationworker stdout | 2025-09-26 08:37:00,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:37:00,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:10.692901+00:00 (in 9.999207 seconds) notificationworker stdout | 2025-09-26 08:37:00,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:10 GMT)" (scheduled at 2025-09-26 08:37:00.692901+00:00) notificationworker stdout | 2025-09-26 08:37:00,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:37:00,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 37, 0, 694029), True, datetime.datetime(2025, 9, 26, 8, 37, 0, 694029), 0, 'notification/%', 50, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,695 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:00,695 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l911w-e7tj9p-19qy', 'x-amz-id-2': 'mg0l911w-e7tj9p-19qy', 'ETag': '"d79d1533d445974a6fac572ac13d1f99-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:00 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '584', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:00 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:00,696 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:00,697 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,697 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:00,697 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,697 [251] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:37:00,697 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:00,698 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:00,698 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:00,698 [251] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'extra_args': {}, 'callbacks': [], 'size': 584} gunicorn-registry stdout | 2025-09-26 08:37:00,698 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,698 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,698 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,698 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,698 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,698 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,698 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,698 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,698 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,698 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,698 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:00,699 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:00,699 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:00,699 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:00,699 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,699 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,699 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,699 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:00,699 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,699 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,699 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,699 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,699 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,699 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:00,699 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/72856f13-e295-45fb-823d-96a59869af51 gunicorn-registry stdout | x-amz-date:20250926T083700Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:00,699 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083700Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | e846bc807a50c72be03c459bdd00c5d9a1d7282222a54ff04f33c5c6fe3b466a gunicorn-registry stdout | 2025-09-26 08:37:00,700 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 9cef287948fbabe0309e3f587c2d46f11bdb4a5952517214bec862a30357b96c gunicorn-registry stdout | 2025-09-26 08:37:00,700 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,700 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,700 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:00,700 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:00,700 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None notificationworker stdout | 2025-09-26 08:37:00,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:37:00,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:37:00,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:10 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:37:00,726 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:37:00,726 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9125-edg562-evz', 'x-amz-id-2': 'mg0l9125-edg562-evz', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:37:00 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:00,726 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:37:00.000Z"d79d1533d445974a6fac572ac13d1f99-1"' gunicorn-registry stdout | 2025-09-26 08:37:00,727 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,727 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:00,727 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:00,727 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:00,727 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:00,728 [251] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob acf4e4eb-f63f-41c8-93ab-ef21d8502dfc with digest sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2 took 0.03962993621826172 seconds gunicorn-registry stdout | 2025-09-26 08:37:00,729 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['acf4e4eb-f63f-41c8-93ab-ef21d8502dfc', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,730 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,731 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['ed59a6c3-28ec-4b97-b5f1-b79c436780b9', 584, None, True, True, 'sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2']) gunicorn-registry stdout | 2025-09-26 08:37:00,732 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [39, 9]) gunicorn-registry stdout | 2025-09-26 08:37:00,733 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:00,734 [251] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [2, 39, datetime.datetime(2025, 9, 26, 8, 37, 0, 733605), datetime.datetime(2025, 9, 26, 9, 37, 0, 733591)]) gunicorn-registry stdout | 2025-09-26 08:37:00,734 [251] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [38]) gunicorn-registry stdout | 2025-09-26 08:37:00,736 [251] [DEBUG] [app] Ending request: urn:request:484cf1da-df9d-4530-b1b8-e5520d38aeae (/v2/testorg/alpine/blobs/uploads/acf4e4eb-f63f-41c8-93ab-ef21d8502dfc) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:484cf1da-df9d-4530-b1b8-e5520d38aeae', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/acf4e4eb-f63f-41c8-93ab-ef21d8502dfc?digest=sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'path': '/v2/testorg/alpine/blobs/uploads/acf4e4eb-f63f-41c8-93ab-ef21d8502dfc', 'parameters': {'digest': 'sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:00,736 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:00,737 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:00,737 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:00 +0000] "PUT /v2/testorg/alpine/blobs/uploads/acf4e4eb-f63f-41c8-93ab-ef21d8502dfc?digest=sha256%3A3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:00 +0000] "PUT /v2/testorg/alpine/blobs/uploads/acf4e4eb-f63f-41c8-93ab-ef21d8502dfc?digest=sha256%3A3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.094 1849 0.094) gunicorn-registry stdout | 2025-09-26 08:37:01,226 [257] [DEBUG] [app] Starting request: urn:request:69167c3d-f7de-4e49-bb1e-251c794f2b5d (/v2/testorg/alpine/blobs/sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:01,226 [257] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:01,226 [257] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:01,226 [257] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:01,227 [257] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:01,227 [257] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:01,227 [257] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:01,228 [257] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:01,228 [257] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:37:01,228 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,231 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,232 [257] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:01,232 [257] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168_2 gunicorn-registry stdout | 2025-09-26 08:37:01,232 [257] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:01,233 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,234 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,235 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,236 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,237 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,238 [257] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168_2: None gunicorn-registry stdout | 2025-09-26 08:37:01,238 [257] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168_2: None gunicorn-registry stdout | 2025-09-26 08:37:01,238 [257] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:01,238 [257] [DEBUG] [app] Ending request: urn:request:69167c3d-f7de-4e49-bb1e-251c794f2b5d (/v2/testorg/alpine/blobs/sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:69167c3d-f7de-4e49-bb1e-251c794f2b5d', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168', 'path': '/v2/testorg/alpine/blobs/sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:01,239 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:01,239 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:01,239 [257] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:01 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:01 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.015 1714 0.015) gunicorn-registry stdout | 2025-09-26 08:37:01,437 [258] [DEBUG] [app] Starting request: urn:request:c8478330-7de5-4756-8d50-661cbba14043 (/v2/testorg/alpine/blobs/sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:01,438 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:01,438 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:01,438 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:01,439 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:01,439 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:01,439 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:01,439 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:01,439 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:37:01,440 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,441 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,442 [258] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:01,442 [258] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168_2 gunicorn-registry stdout | 2025-09-26 08:37:01,442 [258] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:01,443 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,444 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,445 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,446 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,447 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,448 [258] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168_2: None gunicorn-registry stdout | 2025-09-26 08:37:01,448 [258] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168_2: None gunicorn-registry stdout | 2025-09-26 08:37:01,448 [258] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:01,449 [258] [DEBUG] [app] Ending request: urn:request:c8478330-7de5-4756-8d50-661cbba14043 (/v2/testorg/alpine/blobs/sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:c8478330-7de5-4756-8d50-661cbba14043', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168', 'path': '/v2/testorg/alpine/blobs/sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:01,449 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:01,449 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:01,449 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:01 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:01 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.012 1714 0.013) gunicorn-registry stdout | 2025-09-26 08:37:01,517 [258] [DEBUG] [app] Starting request: urn:request:dadfcd24-619e-49ff-ae20-4f05e25c892a (/v2/testorg/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:01,517 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:01,517 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:01,518 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:01,518 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:01,518 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:01,518 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:01,518 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:01,519 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:37:01,520 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,521 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,522 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,523 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,524 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,525 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,527 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:37:01,527 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,528 [258] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [2, '5ef99778-25f4-45bb-aca6-d98adea2bd9b', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 37, 1, 528329)]) gunicorn-registry stdout | 2025-09-26 08:37:01,530 [258] [DEBUG] [app] Ending request: urn:request:dadfcd24-619e-49ff-ae20-4f05e25c892a (/v2/testorg/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:dadfcd24-619e-49ff-ae20-4f05e25c892a', 'remote_addr': '10.131.2.20', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/', 'path': '/v2/testorg/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:01,530 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:01,530 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:01,530 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:01 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:01 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.014 1693 0.013) gunicorn-registry stdout | 2025-09-26 08:37:01,571 [258] [DEBUG] [app] Starting request: urn:request:6f547b60-4c7a-440b-8e6f-7b9774e2476d (/v2/testorg/alpine/blobs/uploads/5ef99778-25f4-45bb-aca6-d98adea2bd9b) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:01,571 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '5ef99778-25f4-45bb-aca6-d98adea2bd9b', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:01,571 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:01,571 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:01,572 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:01,572 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:01,572 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:01,572 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:01,572 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:37:01,573 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,574 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,575 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,576 [258] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,577 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,578 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,580 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,581 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:37:01,582 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['5ef99778-25f4-45bb-aca6-d98adea2bd9b', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,582 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:01,583 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:01,583 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:01,584 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:01,584 [258] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:01,584 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,584 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,584 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,584 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,584 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,584 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,584 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,584 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,584 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:01,584 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:01,584 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:01,585 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:01,585 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,585 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,585 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,585 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:01,585 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,585 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,585 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,585 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,585 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:01,585 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083701Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:01,586 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083701Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 9fd0191b762b5ee098835f1da8b4e1eb8058de511d63aaa43ffb420a38f1caba gunicorn-registry stdout | 2025-09-26 08:37:01,586 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | f8a7dc7663fc18e2f62d00137690111dc6f9f38a75fc01bf68dc63549fa7ebd5 gunicorn-registry stdout | 2025-09-26 08:37:01,586 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,586 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:01,586 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:01,586 [258] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | 2025-09-26 08:37:01,616 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:01,617 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l91rg-cvvu0o-2gp', 'x-amz-id-2': 'mg0l91rg-cvvu0o-2gp', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:01 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:01,617 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf625068d650add73ec60008f93467' gunicorn-registry stdout | 2025-09-26 08:37:01,617 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,617 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:01,617 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,617 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l91rg-cvvu0o-2gp', 'HostId': 'mg0l91rg-cvvu0o-2gp', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l91rg-cvvu0o-2gp', 'x-amz-id-2': 'mg0l91rg-cvvu0o-2gp', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:01 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250', 'UploadId': '68d650add73ec60008f93467'} gunicorn-registry stdout | 2025-09-26 08:37:01,617 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:01,644 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:01,645 [258] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:01,645 [258] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250', 'UploadId': '68d650add73ec60008f93467', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b8829080>, 'ContentLength': 79035} gunicorn-registry stdout | 2025-09-26 08:37:01,645 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,645 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,645 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,645 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,645 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,645 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,645 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,645 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,645 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:01,646 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:01,646 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:01,646 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:01,646 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,646 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,646 [258] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:01,646 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,646 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,646 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250', 'query_string': {'uploadId': '68d650add73ec60008f93467', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '79035', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': '1XZLPOKbse+DT4xuJsdWUQ==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b8829080>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250?uploadId=68d650add73ec60008f93467&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250', 'UploadId': '68d650add73ec60008f93467', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b8829080>, 'ContentLength': 79035}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:01,647 [258] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,647 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,647 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,647 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,647 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:01,647 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250 gunicorn-registry stdout | partNumber=1&uploadId=68d650add73ec60008f93467 gunicorn-registry stdout | content-length:79035 gunicorn-registry stdout | content-md5:1XZLPOKbse+DT4xuJsdWUQ== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083701Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:01,647 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083701Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 30714d146382a833f7a4d8048ce46202b87514e193363c06fbeabe142c954e8b gunicorn-registry stdout | 2025-09-26 08:37:01,647 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 04c212f786a0d4a8a8bde73070420a3f1b482354be301fd0d9069c303f53c14f gunicorn-registry stdout | 2025-09-26 08:37:01,647 [258] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,647 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:01,648 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:01,648 [258] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:37:01,650 [258] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:37:01,735 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250?uploadId=68d650add73ec60008f93467&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:01,735 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l91sh-didgmo-16n7', 'x-amz-id-2': 'mg0l91sh-didgmo-16n7', 'ETag': '"d5764b3ce29bb1ef834f8c6e26c75651"', 'Date': 'Fri, 26 Sep 2025 08:37:01 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:01,736 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:01,736 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,736 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:01,736 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,736 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l91sh-didgmo-16n7', 'HostId': 'mg0l91sh-didgmo-16n7', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l91sh-didgmo-16n7', 'x-amz-id-2': 'mg0l91sh-didgmo-16n7', 'etag': '"d5764b3ce29bb1ef834f8c6e26c75651"', 'date': 'Fri, 26 Sep 2025 08:37:01 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"d5764b3ce29bb1ef834f8c6e26c75651"'} gunicorn-registry stdout | 2025-09-26 08:37:01,736 [258] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250', 'UploadId': '68d650add73ec60008f93467', 'MultipartUpload': {'Parts': [{'ETag': '"d5764b3ce29bb1ef834f8c6e26c75651"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:01,736 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,736 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,736 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,736 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,736 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,736 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,736 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,736 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:01,736 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:01,736 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:01,736 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:01,737 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,737 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,737 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,737 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250', 'query_string': {'uploadId': '68d650add73ec60008f93467'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"d5764b3ce29bb1ef834f8c6e26c75651"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250?uploadId=68d650add73ec60008f93467', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250', 'UploadId': '68d650add73ec60008f93467', 'MultipartUpload': {'Parts': [{'ETag': '"d5764b3ce29bb1ef834f8c6e26c75651"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:01,737 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,737 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,737 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,737 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,737 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:01,737 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250 gunicorn-registry stdout | uploadId=68d650add73ec60008f93467 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:37677139f81f3efd8a50441ba4f25d8c054bba9618242d36c97f3c7b09c08c74 gunicorn-registry stdout | x-amz-date:20250926T083701Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 37677139f81f3efd8a50441ba4f25d8c054bba9618242d36c97f3c7b09c08c74 gunicorn-registry stdout | 2025-09-26 08:37:01,737 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083701Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | ff0a01a4050abc3bf16f629b15cf07718bba252c46e00d122e4a30bfc9ea3429 gunicorn-registry stdout | 2025-09-26 08:37:01,737 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 13e0c120f6a5f1a592d6ab2855af16a02e39a2f94f21c168987021c3c61f44df gunicorn-registry stdout | 2025-09-26 08:37:01,737 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,738 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:01,738 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:01,753 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250?uploadId=68d650add73ec60008f93467 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:01,754 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l91uz-ezk6qd-18', 'x-amz-id-2': 'mg0l91uz-ezk6qd-18', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:01 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:01,754 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250"0fa0286f95d7876eca11a087e46ad626-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250?uploadId=68d650add73ec60008f93467' gunicorn-registry stdout | 2025-09-26 08:37:01,754 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,754 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,754 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:01,754 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,754 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l91uz-ezk6qd-18', 'HostId': 'mg0l91uz-ezk6qd-18', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l91uz-ezk6qd-18', 'x-amz-id-2': 'mg0l91uz-ezk6qd-18', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:01 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250?uploadId=68d650add73ec60008f93467', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250', 'ETag': '"0fa0286f95d7876eca11a087e46ad626-1"'} gunicorn-registry stdout | 2025-09-26 08:37:01,754 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:01,756 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:01,756 [258] [DEBUG] [data.registry_model.blobuploader] Uploaded 79035 bytes to blob 5ef99778-25f4-45bb-aca6-d98adea2bd9b took 0.1733241081237793 seconds gunicorn-registry stdout | 2025-09-26 08:37:01,757 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['5ef99778-25f4-45bb-aca6-d98adea2bd9b', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,758 [258] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, '5ef99778-25f4-45bb-aca6-d98adea2bd9b', 79035, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwM2ZjNmE0ZjhlYzk2ZGQxMzU4IiwicmVsYXRpb25zaGlwVHlwZSI6IkdFTkVSQVRFRF9GUk9NIn1dfX1iMjIxNTsAAAAAAAAAAKQJAAAAAAAD8Fk/i0joQZwldYFN1kCV/iiT4/YDFtsugvxqtYn76ZRiLg==', 9, '{"chunks": [["uploads/96790086-b8e5-4585-bf5a-b872b7cf6250", 0, 79035]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 37, 1, 528329), None, None, 40]) gunicorn-registry stdout | 2025-09-26 08:37:01,760 [258] [DEBUG] [app] Ending request: urn:request:6f547b60-4c7a-440b-8e6f-7b9774e2476d (/v2/testorg/alpine/blobs/uploads/5ef99778-25f4-45bb-aca6-d98adea2bd9b) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:6f547b60-4c7a-440b-8e6f-7b9774e2476d', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/5ef99778-25f4-45bb-aca6-d98adea2bd9b', 'path': '/v2/testorg/alpine/blobs/uploads/5ef99778-25f4-45bb-aca6-d98adea2bd9b', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:01,760 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:01,760 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:01,760 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:01 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/5ef99778-25f4-45bb-aca6-d98adea2bd9b HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:01 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/5ef99778-25f4-45bb-aca6-d98adea2bd9b HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.191 80809 0.189) gunicorn-registry stdout | 2025-09-26 08:37:01,801 [258] [DEBUG] [app] Starting request: urn:request:f5ba6dba-a3fe-4a6d-9c3e-47ced6326e46 (/v2/testorg/alpine/blobs/uploads/5ef99778-25f4-45bb-aca6-d98adea2bd9b) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:01,801 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '5ef99778-25f4-45bb-aca6-d98adea2bd9b', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:01,802 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:01,802 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:01,803 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:01,803 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:01,803 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:01,803 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:01,803 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:37:01,804 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,805 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,806 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,807 [258] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,808 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,809 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,809 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,810 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:37:01,811 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['5ef99778-25f4-45bb-aca6-d98adea2bd9b', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,813 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:01,813 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:01,813 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:01,814 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:01,814 [258] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6da94483-1da9-4e9e-9510-1e2cc55dc8ab', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:01,814 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,814 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,814 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,814 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,814 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,814 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,815 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,815 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,815 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:01,815 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:01,815 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:01,815 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:01,815 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,815 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,815 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,815 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/6da94483-1da9-4e9e-9510-1e2cc55dc8ab?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6da94483-1da9-4e9e-9510-1e2cc55dc8ab', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6da94483-1da9-4e9e-9510-1e2cc55dc8ab?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6da94483-1da9-4e9e-9510-1e2cc55dc8ab', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:01,815 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,815 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,815 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,815 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,815 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:01,815 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6da94483-1da9-4e9e-9510-1e2cc55dc8ab gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083701Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:01,815 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083701Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | e25938793041f6050eacbf5c479afddefebc7daf0f2432638c9efc4bb1b85ae9 gunicorn-registry stdout | 2025-09-26 08:37:01,816 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | f098f7ba0984fbcf890e11c4e8a9243e81d51a0aa87b61e61d919c2b6f122b3d gunicorn-registry stdout | 2025-09-26 08:37:01,816 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,816 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:01,816 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:01,823 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6da94483-1da9-4e9e-9510-1e2cc55dc8ab?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:01,823 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l91x6-gan2dh-i7b', 'x-amz-id-2': 'mg0l91x6-gan2dh-i7b', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:01 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:01,823 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/6da94483-1da9-4e9e-9510-1e2cc55dc8ab68d650add73ec60008f93473' gunicorn-registry stdout | 2025-09-26 08:37:01,823 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,823 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:01,823 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,823 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l91x6-gan2dh-i7b', 'HostId': 'mg0l91x6-gan2dh-i7b', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l91x6-gan2dh-i7b', 'x-amz-id-2': 'mg0l91x6-gan2dh-i7b', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:01 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6da94483-1da9-4e9e-9510-1e2cc55dc8ab', 'UploadId': '68d650add73ec60008f93473'} gunicorn-registry stdout | 2025-09-26 08:37:01,823 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:01,824 [258] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6da94483-1da9-4e9e-9510-1e2cc55dc8ab', 'UploadId': '68d650add73ec60008f93473'} gunicorn-registry stdout | 2025-09-26 08:37:01,824 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,824 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,824 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,824 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,824 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,824 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,824 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:01,824 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:01,824 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:01,824 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:01,824 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,824 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,824 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,824 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/6da94483-1da9-4e9e-9510-1e2cc55dc8ab', 'query_string': {'uploadId': '68d650add73ec60008f93473'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6da94483-1da9-4e9e-9510-1e2cc55dc8ab', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6da94483-1da9-4e9e-9510-1e2cc55dc8ab?uploadId=68d650add73ec60008f93473', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/6da94483-1da9-4e9e-9510-1e2cc55dc8ab', 'UploadId': '68d650add73ec60008f93473'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:01,824 [258] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,824 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,825 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,825 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,825 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:01,825 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6da94483-1da9-4e9e-9510-1e2cc55dc8ab gunicorn-registry stdout | uploadId=68d650add73ec60008f93473 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083701Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:01,825 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083701Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | b5345283e5eb223e7ea4f31fe04d8ca24232707c14b6cb44cd4594dada91234a gunicorn-registry stdout | 2025-09-26 08:37:01,825 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 08556635e7030cc42705434906b699614b4285c6b80df4e81a45af945b95c7cf gunicorn-registry stdout | 2025-09-26 08:37:01,825 [258] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,825 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:01,825 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:01,832 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/6da94483-1da9-4e9e-9510-1e2cc55dc8ab?uploadId=68d650add73ec60008f93473 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:37:01,832 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l91xe-gfmofw-f92', 'x-amz-id-2': 'mg0l91xe-gfmofw-f92', 'Date': 'Fri, 26 Sep 2025 08:37:01 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:01,832 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:01,832 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,832 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:01,832 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,833 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l91xe-gfmofw-f92', 'HostId': 'mg0l91xe-gfmofw-f92', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l91xe-gfmofw-f92', 'x-amz-id-2': 'mg0l91xe-gfmofw-f92', 'date': 'Fri, 26 Sep 2025 08:37:01 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:37:01,833 [258] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 5ef99778-25f4-45bb-aca6-d98adea2bd9b took 0.019693851470947266 seconds gunicorn-registry stdout | 2025-09-26 08:37:01,833 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['5ef99778-25f4-45bb-aca6-d98adea2bd9b', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,835 [258] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, '5ef99778-25f4-45bb-aca6-d98adea2bd9b', 79035, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwM2ZjNmE0ZjhlYzk2ZGQxMzU4IiwicmVsYXRpb25zaGlwVHlwZSI6IkdFTkVSQVRFRF9GUk9NIn1dfX1iMjIxNTsAAAAAAAAAAKQJAAAAAAAD8Fk/i0joQZwldYFN1kCV/iiT4/YDFtsugvxqtYn76ZRiLg==', 9, '{"chunks": [["uploads/96790086-b8e5-4585-bf5a-b872b7cf6250", 0, 79035]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 37, 1, 528329), None, None, 40]) gunicorn-registry stdout | 2025-09-26 08:37:01,836 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:01,836 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:01,836 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:01,837 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:01,837 [258] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/67/67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6'} gunicorn-registry stdout | 2025-09-26 08:37:01,837 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,837 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,837 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,837 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,837 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,837 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,837 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,838 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:01,838 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:01,838 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:01,838 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:01,838 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,838 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,838 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,838 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/67/67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/67/67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/67/67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/67/67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:01,838 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,838 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,838 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,838 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,838 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:01,838 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/67/67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083701Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:01,838 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083701Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 6b6a4bff367be360293da45709f0899cbd8097d72ca544ce4c1db5082b559d25 gunicorn-registry stdout | 2025-09-26 08:37:01,838 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 7de854c75b4669919010a4f06bbba88905d2e08ad8624f53c88b7a90c95a0d05 gunicorn-registry stdout | 2025-09-26 08:37:01,838 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,838 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:01,839 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:01,844 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/67/67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:37:01,844 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l91xs-4avqp-1034', 'x-amz-id-2': 'mg0l91xs-4avqp-1034', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:01 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:01,844 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:01,844 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,844 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:01,844 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,844 [258] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:37:01,844 [258] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:37:01,844 [258] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/67/67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6 gunicorn-registry stdout | 2025-09-26 08:37:01,845 [258] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:01,845 [258] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:01,845 [258] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:01,845 [258] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:37:01,845 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,845 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,845 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,845 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,845 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,845 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,845 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,845 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:01,845 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:01,845 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:01,845 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:01,845 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,846 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,846 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,846 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:01,846 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,846 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,846 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,846 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,846 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,846 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:01,846 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083701Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:01,846 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083701Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 5370f2c0dbb921c8b0007359b9302cfb0eae5544d539d9a333e57e2ec7c49deb gunicorn-registry stdout | 2025-09-26 08:37:01,846 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | d7ae6308ce1b4004ed55fde9a4ee465afd03aa9360b9d8b7ae5c3f390969e0b0 gunicorn-registry stdout | 2025-09-26 08:37:01,846 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,846 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,846 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:01,846 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:01,847 [258] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | 2025-09-26 08:37:01,874 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:01,875 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l91ym-mku9v-j4d', 'x-amz-id-2': 'mg0l91ym-mku9v-j4d', 'ETag': '"0fa0286f95d7876eca11a087e46ad626-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:01 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '79035', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:01 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:01,875 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:01,875 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,875 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:01,875 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,875 [258] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/67/67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:37:01,875 [258] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/67/67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/67/67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/67/67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/67/67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6', 'extra_args': {}, 'callbacks': [], 'size': 79035} gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/67/67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/67/67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/67/67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/67/67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,876 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,877 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,877 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,877 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:01,877 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/67/67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/96790086-b8e5-4585-bf5a-b872b7cf6250 gunicorn-registry stdout | x-amz-date:20250926T083701Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:01,877 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083701Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | c9a29df7a9475b98169ff27b8f804ada3c7f2dd0739114ab2678037cc67ee428 gunicorn-registry stdout | 2025-09-26 08:37:01,877 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | ce62d909ed3ede871c154c2f717848d01fcf491ceec3d25acb7adeabc4be2be2 gunicorn-registry stdout | 2025-09-26 08:37:01,877 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,877 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,877 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:01,877 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:01,877 [258] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:01,906 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/67/67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:37:01,906 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l91yu-rcukr-9gy', 'x-amz-id-2': 'mg0l91yu-rcukr-9gy', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:37:01 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:01,906 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:37:01.000Z"0fa0286f95d7876eca11a087e46ad626-1"' gunicorn-registry stdout | 2025-09-26 08:37:01,906 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,906 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:01,906 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:01,906 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:01,907 [258] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:01,907 [258] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 5ef99778-25f4-45bb-aca6-d98adea2bd9b with digest sha256:67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6 took 0.06277036666870117 seconds gunicorn-registry stdout | 2025-09-26 08:37:01,907 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['5ef99778-25f4-45bb-aca6-d98adea2bd9b', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,909 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,910 [258] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['2e8f6a6b-2109-41bc-99ff-3be2c098415f', 79035, None, True, True, 'sha256:67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6']) gunicorn-registry stdout | 2025-09-26 08:37:01,910 [258] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [40, 9]) gunicorn-registry stdout | 2025-09-26 08:37:01,911 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:01,912 [258] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [2, 40, datetime.datetime(2025, 9, 26, 8, 37, 1, 911877), datetime.datetime(2025, 9, 26, 9, 37, 1, 911861)]) gunicorn-registry stdout | 2025-09-26 08:37:01,912 [258] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [40]) gunicorn-registry stdout | 2025-09-26 08:37:01,914 [258] [DEBUG] [app] Ending request: urn:request:f5ba6dba-a3fe-4a6d-9c3e-47ced6326e46 (/v2/testorg/alpine/blobs/uploads/5ef99778-25f4-45bb-aca6-d98adea2bd9b) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:f5ba6dba-a3fe-4a6d-9c3e-47ced6326e46', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/5ef99778-25f4-45bb-aca6-d98adea2bd9b?digest=sha256:67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6', 'path': '/v2/testorg/alpine/blobs/uploads/5ef99778-25f4-45bb-aca6-d98adea2bd9b', 'parameters': {'digest': 'sha256:67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:01,914 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:01,914 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:01,914 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:01 +0000] "PUT /v2/testorg/alpine/blobs/uploads/5ef99778-25f4-45bb-aca6-d98adea2bd9b?digest=sha256%3A67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:01 +0000] "PUT /v2/testorg/alpine/blobs/uploads/5ef99778-25f4-45bb-aca6-d98adea2bd9b?digest=sha256%3A67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.113 1849 0.113) gunicorn-registry stdout | 2025-09-26 08:37:02,267 [251] [DEBUG] [app] Starting request: urn:request:9ba46d05-549d-46b5-8ff7-f4b339feb5e2 (/v2/testorg/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:02,268 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:02,268 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:02,268 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:02,269 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:02,269 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:02,269 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:02,269 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:02,269 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:37:02,270 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:02,271 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:02,272 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:02,273 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:02,274 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:02,275 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:02,276 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:37:02,277 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:02,278 [251] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [2, '8b97cf23-05a2-4235-a0b6-487d5c18aecd', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 37, 2, 278391)]) gunicorn-registry stdout | 2025-09-26 08:37:02,281 [251] [DEBUG] [app] Ending request: urn:request:9ba46d05-549d-46b5-8ff7-f4b339feb5e2 (/v2/testorg/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:9ba46d05-549d-46b5-8ff7-f4b339feb5e2', 'remote_addr': '10.131.2.20', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/', 'path': '/v2/testorg/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:02,281 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:02,281 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:02,281 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:02 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:02 +0000] "POST /v2/testorg/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.014 1693 0.014) gunicorn-registry stdout | 2025-09-26 08:37:02,323 [257] [DEBUG] [app] Starting request: urn:request:305705d3-fde2-43f4-b25f-190849549bcf (/v2/testorg/alpine/blobs/uploads/8b97cf23-05a2-4235-a0b6-487d5c18aecd) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:02,323 [257] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '8b97cf23-05a2-4235-a0b6-487d5c18aecd', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:02,323 [257] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:02,323 [257] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:02,324 [257] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:02,324 [257] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:02,324 [257] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:02,324 [257] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:02,324 [257] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:37:02,325 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:02,327 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:02,327 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:02,329 [257] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:02,330 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:02,332 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:02,333 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:02,333 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:37:02,335 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['8b97cf23-05a2-4235-a0b6-487d5c18aecd', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:02,336 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:02,336 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:02,336 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:02,337 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:02,337 [257] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:02,337 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,337 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,337 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,338 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,338 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:02,338 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,338 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,338 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:02,338 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:02,338 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:02,338 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:02,338 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:02,338 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,338 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,338 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,338 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:02,338 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:02,338 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:02,338 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,338 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,339 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:02,339 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083702Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:02,339 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083702Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | bc9faaf001fba38c396647ade5febd81ca4c76f5b02a9f9b45c1fa3135dcc5cd gunicorn-registry stdout | 2025-09-26 08:37:02,339 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | ded8167508b5afd44504f14a5d9007d02af14b00d4383f483ebdbd526897b723 gunicorn-registry stdout | 2025-09-26 08:37:02,339 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,339 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:02,339 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:02,339 [257] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | 2025-09-26 08:37:02,371 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:02,372 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l92cd-8tcy80-btk', 'x-amz-id-2': 'mg0l92cd-8tcy80-btk', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:02 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:02,372 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a9268d650aed73ec60008f93479' gunicorn-registry stdout | 2025-09-26 08:37:02,372 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,372 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:02,372 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:02,372 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l92cd-8tcy80-btk', 'HostId': 'mg0l92cd-8tcy80-btk', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l92cd-8tcy80-btk', 'x-amz-id-2': 'mg0l92cd-8tcy80-btk', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:02 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92', 'UploadId': '68d650aed73ec60008f93479'} gunicorn-registry stdout | 2025-09-26 08:37:02,372 [257] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:02,373 [257] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:02,374 [257] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:02,374 [257] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92', 'UploadId': '68d650aed73ec60008f93479', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b898a890>, 'ContentLength': 241} gunicorn-registry stdout | 2025-09-26 08:37:02,375 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,375 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,375 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,375 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,375 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:02,375 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,376 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,376 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:02,376 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:02,376 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:02,376 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:02,376 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:02,376 [257] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,377 [257] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,377 [257] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:02,377 [257] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,377 [257] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,377 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92', 'query_string': {'uploadId': '68d650aed73ec60008f93479', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '241', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'kQUyG+piYSsUslvKqWjTIA==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b898a890>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92?uploadId=68d650aed73ec60008f93479&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92', 'UploadId': '68d650aed73ec60008f93479', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b898a890>, 'ContentLength': 241}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:02,377 [257] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:02,377 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:02,377 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,378 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,379 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:02,379 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92 gunicorn-registry stdout | partNumber=1&uploadId=68d650aed73ec60008f93479 gunicorn-registry stdout | content-length:241 gunicorn-registry stdout | content-md5:kQUyG+piYSsUslvKqWjTIA== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083702Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:02,379 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083702Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 74c855e5ffd0b9fe2380d260b64dff44d6157b191d4bde15949418e5cada30a2 gunicorn-registry stdout | 2025-09-26 08:37:02,379 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 1d8381e0e19f7f08efea4eb18304317880c479bed28d4cb65ed21c49f473f257 gunicorn-registry stdout | 2025-09-26 08:37:02,379 [257] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,379 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:02,380 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:02,381 [257] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:37:02,382 [257] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:37:02,467 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92?uploadId=68d650aed73ec60008f93479&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:02,467 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l92ct-92plr7-wfm', 'x-amz-id-2': 'mg0l92ct-92plr7-wfm', 'ETag': '"9105321bea62612b14b25bcaa968d320"', 'Date': 'Fri, 26 Sep 2025 08:37:02 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:02,467 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:02,467 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,468 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:02,468 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:02,468 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l92ct-92plr7-wfm', 'HostId': 'mg0l92ct-92plr7-wfm', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l92ct-92plr7-wfm', 'x-amz-id-2': 'mg0l92ct-92plr7-wfm', 'etag': '"9105321bea62612b14b25bcaa968d320"', 'date': 'Fri, 26 Sep 2025 08:37:02 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"9105321bea62612b14b25bcaa968d320"'} gunicorn-registry stdout | 2025-09-26 08:37:02,468 [257] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92', 'UploadId': '68d650aed73ec60008f93479', 'MultipartUpload': {'Parts': [{'ETag': '"9105321bea62612b14b25bcaa968d320"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:02,468 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,468 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,468 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,468 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:02,468 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,468 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,468 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:02,469 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:02,469 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:02,469 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:02,469 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:02,470 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,470 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,470 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,470 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92', 'query_string': {'uploadId': '68d650aed73ec60008f93479'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"9105321bea62612b14b25bcaa968d320"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92?uploadId=68d650aed73ec60008f93479', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92', 'UploadId': '68d650aed73ec60008f93479', 'MultipartUpload': {'Parts': [{'ETag': '"9105321bea62612b14b25bcaa968d320"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:02,470 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:02,471 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:02,471 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,471 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,471 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:02,471 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92 gunicorn-registry stdout | uploadId=68d650aed73ec60008f93479 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:04e2fcb4429d70dea351d3d9d6147ee3298d360a0af909a7331a85858bd3fed5 gunicorn-registry stdout | x-amz-date:20250926T083702Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 04e2fcb4429d70dea351d3d9d6147ee3298d360a0af909a7331a85858bd3fed5 gunicorn-registry stdout | 2025-09-26 08:37:02,471 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083702Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 0dbbcf95e1ac7b85c41248d05fe7b6459ddad2b3e04c331f809085d259b5c70f gunicorn-registry stdout | 2025-09-26 08:37:02,471 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | b18838827eb7514490547d0a6619522fc292c4ce7eab3fef2896e3a4bcf46ea1 gunicorn-registry stdout | 2025-09-26 08:37:02,471 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,471 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:02,471 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem proxycacheblobworker stdout | 2025-09-26 08:37:02,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:37:02,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:12.477454+00:00 (in 9.999601 seconds) proxycacheblobworker stdout | 2025-09-26 08:37:02,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:12 GMT)" (scheduled at 2025-09-26 08:37:02.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:37:02,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:37:02,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 37, 2, 478381), True, datetime.datetime(2025, 9, 26, 8, 37, 2, 478381), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:37:02,485 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:37:02,485 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:37:02,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:12 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:37:02,487 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92?uploadId=68d650aed73ec60008f93479 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:02,487 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l92fd-al5ygx-ram', 'x-amz-id-2': 'mg0l92fd-al5ygx-ram', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:02 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:02,488 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92"84640d82a0cfebe3cecb2a047dce8a32-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92?uploadId=68d650aed73ec60008f93479' gunicorn-registry stdout | 2025-09-26 08:37:02,488 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,488 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:02,488 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:02,488 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:02,488 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l92fd-al5ygx-ram', 'HostId': 'mg0l92fd-al5ygx-ram', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l92fd-al5ygx-ram', 'x-amz-id-2': 'mg0l92fd-al5ygx-ram', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:02 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92?uploadId=68d650aed73ec60008f93479', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92', 'ETag': '"84640d82a0cfebe3cecb2a047dce8a32-1"'} gunicorn-registry stdout | 2025-09-26 08:37:02,488 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:02,489 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:02,489 [257] [DEBUG] [data.registry_model.blobuploader] Uploaded 241 bytes to blob 8b97cf23-05a2-4235-a0b6-487d5c18aecd took 0.15302562713623047 seconds gunicorn-registry stdout | 2025-09-26 08:37:02,490 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['8b97cf23-05a2-4235-a0b6-487d5c18aecd', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:02,492 [257] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, '8b97cf23-05a2-4235-a0b6-487d5c18aecd', 241, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwYTUyMjBiOWI3ZmFiMWUwMzEyMmU3NmM0OWU3OTQ2MDkzNTRkMWY3YTlhMTY4Il19fWU4ZDZjZTA1Y2ZmODhjNTEAAAAAAAAAAAYAAAAAAABfrmInVyDke4yUvNJQASYdPfNjrcUqP8CVwkLejX1BJZRiLg==', 9, '{"chunks": [["uploads/f920e3db-7347-4c22-8eac-1c7a07a09a92", 0, 241]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 37, 2, 278391), None, None, 41]) gunicorn-registry stdout | 2025-09-26 08:37:02,494 [257] [DEBUG] [app] Ending request: urn:request:305705d3-fde2-43f4-b25f-190849549bcf (/v2/testorg/alpine/blobs/uploads/8b97cf23-05a2-4235-a0b6-487d5c18aecd) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:305705d3-fde2-43f4-b25f-190849549bcf', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/8b97cf23-05a2-4235-a0b6-487d5c18aecd', 'path': '/v2/testorg/alpine/blobs/uploads/8b97cf23-05a2-4235-a0b6-487d5c18aecd', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:02,494 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:02,494 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:02,494 [257] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:02 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/8b97cf23-05a2-4235-a0b6-487d5c18aecd HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:02 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/8b97cf23-05a2-4235-a0b6-487d5c18aecd HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.173 2013 0.172) storagereplication stdout | 2025-09-26 08:37:02,548 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} namespacegcworker stdout | 2025-09-26 08:37:02,939 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-web stdout | 2025-09-26 08:37:03,199 [247] [DEBUG] [app] Starting request: urn:request:925a2093-2f32-443d-9c1a-2018703225ac (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:37:03,203 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:37:03,205 [251] [DEBUG] [app] Starting request: urn:request:0d74c995-a10e-4388-8341-5ba411dd4686 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:37:03,205 [251] [DEBUG] [app] Ending request: urn:request:0d74c995-a10e-4388-8341-5ba411dd4686 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:0d74c995-a10e-4388-8341-5ba411dd4686', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:37:03,206 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:37:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:37:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:37:03,206 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:37:03,207 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:37:03,208 [247] [DEBUG] [app] Starting request: urn:request:ce572568-9a20-4963-a4c2-abf98515acd9 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:37:03,209 [247] [DEBUG] [app] Ending request: urn:request:ce572568-9a20-4963-a4c2-abf98515acd9 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:ce572568-9a20-4963-a4c2-abf98515acd9', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:37:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:37:03,209 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:37:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:37:03,209 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:37:03,210 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:37:03,210 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:37:03,210 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:37:03,214 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:37:03,214 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:37:03,219 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:37:03,220 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:37:03,220 [247] [DEBUG] [app] Ending request: urn:request:925a2093-2f32-443d-9c1a-2018703225ac (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:925a2093-2f32-443d-9c1a-2018703225ac', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:37:03,220 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:37:03,221 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:37:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:37:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.023 118 0.023) gunicorn-web stdout | 2025-09-26 08:37:03,261 [247] [DEBUG] [app] Starting request: urn:request:c37b7f33-30d5-409f-954b-943e2ee19265 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:37:03,262 [251] [DEBUG] [app] Starting request: urn:request:b60b213e-1884-4ce6-aed3-b86ad47b0684 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:37:03,263 [251] [DEBUG] [app] Ending request: urn:request:b60b213e-1884-4ce6-aed3-b86ad47b0684 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:b60b213e-1884-4ce6-aed3-b86ad47b0684', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:37:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-registry stdout | 2025-09-26 08:37:03,263 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:37:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:37:03,263 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:37:03,264 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:37:03,265 [247] [DEBUG] [app] Starting request: urn:request:c0e678b1-7d27-440c-9b99-ad4eb518997e (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:37:03,266 [247] [DEBUG] [app] Ending request: urn:request:c0e678b1-7d27-440c-9b99-ad4eb518997e (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:c0e678b1-7d27-440c-9b99-ad4eb518997e', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:37:03,266 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:37:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:37:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:37:03,266 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:37:03,266 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:37:03,267 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:37:03,267 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:37:03,270 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:37:03,270 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:37:03,274 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:37:03,276 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:37:03,276 [247] [DEBUG] [app] Ending request: urn:request:c37b7f33-30d5-409f-954b-943e2ee19265 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:c37b7f33-30d5-409f-954b-943e2ee19265', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:37:03,276 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:37:03,277 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:37:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:37:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.017 118 0.017) gunicorn-registry stdout | 2025-09-26 08:37:04,222 [257] [DEBUG] [app] Starting request: urn:request:3fb131b1-e575-4a46-adec-81519af983f9 (/v2/testorg/alpine/blobs/uploads/fe87e47f-899f-4d8b-bedb-79557b17ed53) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:04,222 [257] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'fe87e47f-899f-4d8b-bedb-79557b17ed53', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:04,222 [257] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:04,222 [257] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:04,223 [257] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:04,223 [257] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:04,223 [257] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:04,223 [257] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:04,223 [257] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:37:04,225 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:04,226 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:04,227 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:04,228 [257] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:04,229 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:04,230 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:04,231 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:04,231 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:37:04,232 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['fe87e47f-899f-4d8b-bedb-79557b17ed53', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:04,233 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:04,233 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:04,233 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:04,234 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:04,234 [257] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dcf2b5b4-96c6-4a80-9527-23e10fc88aaf', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:04,234 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,234 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,234 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,234 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,234 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,234 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,234 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,234 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,235 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:04,235 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:04,235 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:04,235 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:04,235 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,235 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,235 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,235 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/dcf2b5b4-96c6-4a80-9527-23e10fc88aaf?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dcf2b5b4-96c6-4a80-9527-23e10fc88aaf', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dcf2b5b4-96c6-4a80-9527-23e10fc88aaf?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dcf2b5b4-96c6-4a80-9527-23e10fc88aaf', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:04,235 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,235 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,235 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,235 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,235 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:04,235 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dcf2b5b4-96c6-4a80-9527-23e10fc88aaf gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083704Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:04,235 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083704Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | a261fbc6e4970645f19a8ddf53a1a8143212f884a7fe9743e8fefde5093fac73 gunicorn-registry stdout | 2025-09-26 08:37:04,235 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | e490fdc0e7b68ff18f5cf14ab8b5a4661e7674f1674271ca88791daa6f6902d3 gunicorn-registry stdout | 2025-09-26 08:37:04,236 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,236 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:04,236 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:04,243 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dcf2b5b4-96c6-4a80-9527-23e10fc88aaf?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:04,243 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l93se-6perkf-hfu', 'x-amz-id-2': 'mg0l93se-6perkf-hfu', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:04 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:04,243 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/dcf2b5b4-96c6-4a80-9527-23e10fc88aaf68d650b0d73ec60008f93488' gunicorn-registry stdout | 2025-09-26 08:37:04,244 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,244 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:04,244 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,244 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l93se-6perkf-hfu', 'HostId': 'mg0l93se-6perkf-hfu', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l93se-6perkf-hfu', 'x-amz-id-2': 'mg0l93se-6perkf-hfu', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:04 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dcf2b5b4-96c6-4a80-9527-23e10fc88aaf', 'UploadId': '68d650b0d73ec60008f93488'} gunicorn-registry stdout | 2025-09-26 08:37:04,244 [257] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:04,244 [257] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dcf2b5b4-96c6-4a80-9527-23e10fc88aaf', 'UploadId': '68d650b0d73ec60008f93488'} gunicorn-registry stdout | 2025-09-26 08:37:04,244 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,244 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,244 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,244 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,244 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,244 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,244 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:04,244 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:04,245 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:04,245 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:04,245 [257] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,245 [257] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,245 [257] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,245 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/dcf2b5b4-96c6-4a80-9527-23e10fc88aaf', 'query_string': {'uploadId': '68d650b0d73ec60008f93488'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dcf2b5b4-96c6-4a80-9527-23e10fc88aaf', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dcf2b5b4-96c6-4a80-9527-23e10fc88aaf?uploadId=68d650b0d73ec60008f93488', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dcf2b5b4-96c6-4a80-9527-23e10fc88aaf', 'UploadId': '68d650b0d73ec60008f93488'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:04,245 [257] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,245 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,245 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,245 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,245 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:04,245 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dcf2b5b4-96c6-4a80-9527-23e10fc88aaf gunicorn-registry stdout | uploadId=68d650b0d73ec60008f93488 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083704Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:04,245 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083704Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 5bbd5fb6ddad65aa43a356a814c440631976533cd6c3452dac8ae5bcbb8aa852 gunicorn-registry stdout | 2025-09-26 08:37:04,245 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | acb16140767c9a28885a0248f5eecf04e0dca0d9fa222965e0aebc777fb045f5 gunicorn-registry stdout | 2025-09-26 08:37:04,245 [257] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,245 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:04,246 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:04,252 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dcf2b5b4-96c6-4a80-9527-23e10fc88aaf?uploadId=68d650b0d73ec60008f93488 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:37:04,253 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l93sn-6utwx7-b74', 'x-amz-id-2': 'mg0l93sn-6utwx7-b74', 'Date': 'Fri, 26 Sep 2025 08:37:04 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:04,253 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:04,253 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,253 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:04,253 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,253 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l93sn-6utwx7-b74', 'HostId': 'mg0l93sn-6utwx7-b74', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l93sn-6utwx7-b74', 'x-amz-id-2': 'mg0l93sn-6utwx7-b74', 'date': 'Fri, 26 Sep 2025 08:37:04 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:37:04,253 [257] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob fe87e47f-899f-4d8b-bedb-79557b17ed53 took 0.02010178565979004 seconds gunicorn-registry stdout | 2025-09-26 08:37:04,254 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['fe87e47f-899f-4d8b-bedb-79557b17ed53', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:04,255 [257] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, 'fe87e47f-899f-4d8b-bedb-79557b17ed53', 3647529, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwenWWK/9QleSvnf8jT+MfJq/ff7rKVa5yldeV/zcAAP//3oC61gC0hAC/Tteu/N/zf5wFvE4bT+cfOz3/deT/9SkAAAAAAAAAAEC9AQAAAABTe4ngEnIQg4NluufgNBRjh4CnnJwyiWyACW2jcRUHSZRiLg==', 9, '{"chunks": [["uploads/7bfb6d60-33ee-466b-bb53-25c92389d096", 0, 3647529]]}', 2, 8696832, datetime.datetime(2025, 9, 26, 8, 37, 3, 477273), None, None, 42]) gunicorn-registry stdout | 2025-09-26 08:37:04,256 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:04,256 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:04,256 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:04,258 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:04,259 [257] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1'} gunicorn-registry stdout | 2025-09-26 08:37:04,259 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,259 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,259 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,259 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,259 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,259 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,259 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,259 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:04,259 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:04,259 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:04,259 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:04,259 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,259 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,259 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,259 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:04,259 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,259 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,259 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,259 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,260 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:04,260 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083704Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:04,260 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083704Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 7021533eea5b9171ea65166ad2c9f34d0492592a3858a455a5c8d73c6be21672 gunicorn-registry stdout | 2025-09-26 08:37:04,260 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | f96662cb2845c471a84abbdc838c2fdb74ba6b84aba66cc2535f1cc966a2f59b gunicorn-registry stdout | 2025-09-26 08:37:04,260 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,260 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:04,260 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:04,266 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:37:04,266 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l93t1-73awt1-xrq', 'x-amz-id-2': 'mg0l93t1-73awt1-xrq', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:04 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:04,266 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:04,267 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,267 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:04,267 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,267 [257] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:37:04,267 [257] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:37:04,267 [257] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1 gunicorn-registry stdout | 2025-09-26 08:37:04,267 [257] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:04,267 [257] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:04,267 [257] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:04,267 [257] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:37:04,267 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,268 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,268 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,268 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,268 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,268 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,268 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,268 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:04,268 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:04,268 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:04,268 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:04,268 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,268 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,268 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,268 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/7bfb6d60-33ee-466b-bb53-25c92389d096', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7bfb6d60-33ee-466b-bb53-25c92389d096', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7bfb6d60-33ee-466b-bb53-25c92389d096', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/7bfb6d60-33ee-466b-bb53-25c92389d096'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:04,268 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,268 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,268 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,268 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,269 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,269 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:04,269 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7bfb6d60-33ee-466b-bb53-25c92389d096 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083704Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:04,269 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083704Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 1f34bcc42486b1513fa408604071865c2b1e99af6a7a945a1a1d292eb21728f5 gunicorn-registry stdout | 2025-09-26 08:37:04,269 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | a86315890801477dd02f7f4e31274b18e319d044663088c8a9ceab46f9c8a933 gunicorn-registry stdout | 2025-09-26 08:37:04,269 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,269 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,269 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:04,269 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:04,269 [257] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | 2025-09-26 08:37:04,299 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7bfb6d60-33ee-466b-bb53-25c92389d096 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:04,299 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l93tz-7nltbm-13m0', 'x-amz-id-2': 'mg0l93tz-7nltbm-13m0', 'ETag': '"b9ef788a2e9180083bf495551a582f85-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:04 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '3647529', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:04 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:04,299 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:04,300 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,300 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:04,300 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,300 [257] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:37:04,300 [257] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:04,300 [257] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:04,300 [257] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:04,300 [257] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/7bfb6d60-33ee-466b-bb53-25c92389d096'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1', 'extra_args': {}, 'callbacks': [], 'size': 3647529} gunicorn-registry stdout | 2025-09-26 08:37:04,300 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,301 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,301 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,301 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,301 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,301 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,301 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,301 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,301 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,301 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,301 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:04,301 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:04,301 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:04,301 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:04,301 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,301 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,301 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,301 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7bfb6d60-33ee-466b-bb53-25c92389d096', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7bfb6d60-33ee-466b-bb53-25c92389d096', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:04,301 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,301 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,301 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,302 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,302 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,302 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:04,302 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7bfb6d60-33ee-466b-bb53-25c92389d096 gunicorn-registry stdout | x-amz-date:20250926T083704Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:04,302 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083704Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | beff3ae4d402f95ee1adcb9493ff617a8f0b6dd6e98afec1e187343d3e28f385 gunicorn-registry stdout | 2025-09-26 08:37:04,302 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 2cba43baa24cafa63742d8273c7114d30fb55964804c94ca568064ac92dd4b27 gunicorn-registry stdout | 2025-09-26 08:37:04,302 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,302 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,302 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:04,302 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:04,302 [257] [DEBUG] [s3transfer.utils] Releasing acquire 0/None autopruneworker stdout | 2025-09-26 08:37:04,327 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} gunicorn-registry stdout | 2025-09-26 08:37:04,329 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:37:04,329 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l93u7-7sewb2-1c8m', 'x-amz-id-2': 'mg0l93u7-7sewb2-1c8m', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:37:04 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:04,329 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:37:04.000Z"b9ef788a2e9180083bf495551a582f85-1"' gunicorn-registry stdout | 2025-09-26 08:37:04,329 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,329 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:04,329 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:04,329 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:04,330 [257] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:04,330 [257] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob fe87e47f-899f-4d8b-bedb-79557b17ed53 with digest sha256:47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1 took 0.06318783760070801 seconds gunicorn-registry stdout | 2025-09-26 08:37:04,330 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['fe87e47f-899f-4d8b-bedb-79557b17ed53', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:04,331 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:04,332 [257] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['1dcddc11-0c32-4e76-95dc-72585a984b3e', 3647529, 8696832, True, True, 'sha256:47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1']) gunicorn-registry stdout | 2025-09-26 08:37:04,333 [257] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [43, 9]) gunicorn-registry stdout | 2025-09-26 08:37:04,334 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:04,335 [257] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [2, 43, datetime.datetime(2025, 9, 26, 8, 37, 4, 335176), datetime.datetime(2025, 9, 26, 9, 37, 4, 335159)]) gunicorn-registry stdout | 2025-09-26 08:37:04,335 [257] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [42]) gunicorn-registry stdout | 2025-09-26 08:37:04,338 [257] [DEBUG] [app] Ending request: urn:request:3fb131b1-e575-4a46-adec-81519af983f9 (/v2/testorg/alpine/blobs/uploads/fe87e47f-899f-4d8b-bedb-79557b17ed53) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:3fb131b1-e575-4a46-adec-81519af983f9', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/fe87e47f-899f-4d8b-bedb-79557b17ed53?digest=sha256:47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1', 'path': '/v2/testorg/alpine/blobs/uploads/fe87e47f-899f-4d8b-bedb-79557b17ed53', 'parameters': {'digest': 'sha256:47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:04,338 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:04,338 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:04 +0000] "PUT /v2/testorg/alpine/blobs/uploads/fe87e47f-899f-4d8b-bedb-79557b17ed53?digest=sha256%3A47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.117 1849 0.117) gunicorn-registry stdout | 2025-09-26 08:37:04,339 [257] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:04 +0000] "PUT /v2/testorg/alpine/blobs/uploads/fe87e47f-899f-4d8b-bedb-79557b17ed53?digest=sha256%3A47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" expiredappspecifictokenworker stdout | 2025-09-26 08:37:04,410 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} manifestbackfillworker stdout | 2025-09-26 08:37:04,625 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} gunicorn-registry stdout | 2025-09-26 08:37:04,769 [256] [DEBUG] [app] Starting request: urn:request:57f9f73c-819f-4c24-a2d2-b0cd31d0d770 (/v2/testorg/alpine/blobs/sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:04,770 [256] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:04,770 [256] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:04,770 [256] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:04,771 [256] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:04,771 [256] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:04,771 [256] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:04,771 [256] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:04,771 [256] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:37:04,771 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:04,774 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:04,775 [256] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:04,775 [256] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655_2 gunicorn-registry stdout | 2025-09-26 08:37:04,775 [256] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:04,776 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:04,777 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:04,778 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:04,779 [256] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:04,780 [256] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:04,781 [256] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655_2: None gunicorn-registry stdout | 2025-09-26 08:37:04,781 [256] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655_2: None gunicorn-registry stdout | 2025-09-26 08:37:04,781 [256] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:04,781 [256] [DEBUG] [app] Ending request: urn:request:57f9f73c-819f-4c24-a2d2-b0cd31d0d770 (/v2/testorg/alpine/blobs/sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:57f9f73c-819f-4c24-a2d2-b0cd31d0d770', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'path': '/v2/testorg/alpine/blobs/sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:04,781 [256] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:04,781 [256] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:04,781 [256] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:04 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:04 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.013 1714 0.013) builder stdout | 2025-09-26 08:37:05,020 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} gunicorn-registry stdout | 2025-09-26 08:37:05,098 [258] [DEBUG] [app] Starting request: urn:request:073c00e2-0ad7-4fdf-b211-9d9d1be0fb4c (/v2/testorg/alpine/blobs/uploads/70b291ec-6481-4f21-89a2-1180bc6e4efe) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:05,099 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '70b291ec-6481-4f21-89a2-1180bc6e4efe', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:05,099 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:05,099 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:05,100 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:05,100 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:05,100 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:05,100 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:05,100 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:37:05,101 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,102 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,103 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,104 [258] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,105 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,106 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,107 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,108 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:37:05,109 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['70b291ec-6481-4f21-89a2-1180bc6e4efe', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,109 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:05,109 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:05,110 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:05,111 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:05,111 [258] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/0f2c965d-7a03-4c4c-ae41-3454efc8433c', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:05,111 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,111 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,111 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,111 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,111 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,111 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,111 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,111 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,111 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:05,111 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:05,111 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:05,111 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:05,112 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,112 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,112 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,112 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/0f2c965d-7a03-4c4c-ae41-3454efc8433c?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/0f2c965d-7a03-4c4c-ae41-3454efc8433c', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/0f2c965d-7a03-4c4c-ae41-3454efc8433c?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/0f2c965d-7a03-4c4c-ae41-3454efc8433c', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:05,112 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,112 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,112 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,112 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,112 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:05,112 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/0f2c965d-7a03-4c4c-ae41-3454efc8433c gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083705Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:05,112 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083705Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 6ff48694e5aa0d9694ec2423ce02de2dfe74b4212a85191c86744272ed617b2e gunicorn-registry stdout | 2025-09-26 08:37:05,112 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | adfb1e8c363d9adeb2a4269d572b5e62f5ffabe161658ebdd3e8f3d1a5968165 gunicorn-registry stdout | 2025-09-26 08:37:05,112 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,113 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:05,113 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:05,119 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/0f2c965d-7a03-4c4c-ae41-3454efc8433c?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:05,119 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l94gq-4nx1kd-sr4', 'x-amz-id-2': 'mg0l94gq-4nx1kd-sr4', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:05 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:05,119 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/0f2c965d-7a03-4c4c-ae41-3454efc8433c68d650b1d73ec60008f93491' gunicorn-registry stdout | 2025-09-26 08:37:05,120 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,120 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:05,120 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,120 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l94gq-4nx1kd-sr4', 'HostId': 'mg0l94gq-4nx1kd-sr4', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l94gq-4nx1kd-sr4', 'x-amz-id-2': 'mg0l94gq-4nx1kd-sr4', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:05 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/0f2c965d-7a03-4c4c-ae41-3454efc8433c', 'UploadId': '68d650b1d73ec60008f93491'} gunicorn-registry stdout | 2025-09-26 08:37:05,120 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:05,121 [258] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/0f2c965d-7a03-4c4c-ae41-3454efc8433c', 'UploadId': '68d650b1d73ec60008f93491'} gunicorn-registry stdout | 2025-09-26 08:37:05,121 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,121 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,121 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,121 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,121 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,121 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,121 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:05,121 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:05,121 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:05,121 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:05,121 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,121 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,121 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,121 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/0f2c965d-7a03-4c4c-ae41-3454efc8433c', 'query_string': {'uploadId': '68d650b1d73ec60008f93491'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/0f2c965d-7a03-4c4c-ae41-3454efc8433c', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/0f2c965d-7a03-4c4c-ae41-3454efc8433c?uploadId=68d650b1d73ec60008f93491', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/0f2c965d-7a03-4c4c-ae41-3454efc8433c', 'UploadId': '68d650b1d73ec60008f93491'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:05,122 [258] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,122 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,122 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,122 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,122 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:05,122 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/0f2c965d-7a03-4c4c-ae41-3454efc8433c gunicorn-registry stdout | uploadId=68d650b1d73ec60008f93491 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083705Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:05,122 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083705Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 15cf5f1952ee163584c538a737f1a00db61ab1e3d73012e983f4725b1ff5d9f2 gunicorn-registry stdout | 2025-09-26 08:37:05,122 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | c46cf68102e81a02823e560da87d33c70cdfbf2adc7db659c45f7548e9334248 gunicorn-registry stdout | 2025-09-26 08:37:05,122 [258] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,123 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:05,123 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:05,131 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/0f2c965d-7a03-4c4c-ae41-3454efc8433c?uploadId=68d650b1d73ec60008f93491 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:37:05,131 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l94h0-4tr4bu-9s8', 'x-amz-id-2': 'mg0l94h0-4tr4bu-9s8', 'Date': 'Fri, 26 Sep 2025 08:37:05 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:05,131 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:05,131 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,131 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:05,131 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,131 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l94h0-4tr4bu-9s8', 'HostId': 'mg0l94h0-4tr4bu-9s8', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l94h0-4tr4bu-9s8', 'x-amz-id-2': 'mg0l94h0-4tr4bu-9s8', 'date': 'Fri, 26 Sep 2025 08:37:05 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:37:05,131 [258] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 70b291ec-6481-4f21-89a2-1180bc6e4efe took 0.021612882614135742 seconds gunicorn-registry stdout | 2025-09-26 08:37:05,132 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['70b291ec-6481-4f21-89a2-1180bc6e4efe', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,133 [258] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, '70b291ec-6481-4f21-89a2-1180bc6e4efe', 580, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwIl19fWZjYTlmYTYxOTcxMWMzMmFkYmM0NWM4ODA0MDJjMTA0ZGJkZTczZjc1N2Q4N2I4Mjc5MTUxMjY0NzYxMQQAAAAAAAAAABIAAAAAAAAGseygg6h8e9dsaxD+qE9Q8rePk4URKfQWiRPk0eE+lZRiLg==', 9, '{"chunks": [["uploads/88787e79-6a73-4481-9952-3ba0718004cf", 0, 580]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 37, 4, 852677), None, None, 43]) gunicorn-registry stdout | 2025-09-26 08:37:05,135 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:05,135 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:05,135 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:05,136 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:05,136 [258] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655'} gunicorn-registry stdout | 2025-09-26 08:37:05,136 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,136 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,136 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,136 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,136 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,136 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,136 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,136 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:05,137 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:05,137 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:05,137 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:05,137 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,137 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,137 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,137 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:05,137 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,137 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,137 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,137 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,137 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:05,137 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083705Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:05,137 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083705Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 88e452baa07160e30cf9a088792fbe57e40950396955b46e57b3d3c7fb44079c gunicorn-registry stdout | 2025-09-26 08:37:05,137 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | cbfb0e48ff2efe41ac5c6782b4a2ed7703b3db966fa7e2d2f7719170995a5432 gunicorn-registry stdout | 2025-09-26 08:37:05,137 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,138 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:05,138 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:05,143 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:37:05,144 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l94hf-52ovzb-z9h', 'x-amz-id-2': 'mg0l94hf-52ovzb-z9h', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:05 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:05,144 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:05,144 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,144 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:05,144 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,144 [258] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:37:05,144 [258] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:37:05,144 [258] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655 gunicorn-registry stdout | 2025-09-26 08:37:05,144 [258] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:05,145 [258] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:05,145 [258] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:05,145 [258] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:37:05,145 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,145 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,145 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,145 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,145 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,145 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,145 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,145 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:05,145 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:05,145 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:05,145 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:05,145 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,145 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,145 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,145 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/88787e79-6a73-4481-9952-3ba0718004cf', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/88787e79-6a73-4481-9952-3ba0718004cf', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/88787e79-6a73-4481-9952-3ba0718004cf', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/88787e79-6a73-4481-9952-3ba0718004cf'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:05,146 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,146 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,146 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,146 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,146 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,146 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:05,146 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/88787e79-6a73-4481-9952-3ba0718004cf gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083705Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:05,146 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083705Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | c5f9e626f2adcc72be6618125e303bed73cbd5690253a700bea32065422741e3 gunicorn-registry stdout | 2025-09-26 08:37:05,146 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 891616055c5b61e20736d854a9259d54139d7c8319ec63fd97db9035b50de2b7 gunicorn-registry stdout | 2025-09-26 08:37:05,146 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,146 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,146 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:05,146 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:05,153 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/88787e79-6a73-4481-9952-3ba0718004cf HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:05,153 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l94hp-58f64b-ffo', 'x-amz-id-2': 'mg0l94hp-58f64b-ffo', 'ETag': '"7478be6b88f1ffd40bbbd0969bfa45ef-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:05 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '580', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:05 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:05,153 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:05,154 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,154 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:05,154 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,154 [258] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:37:05,154 [258] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:05,154 [258] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:05,154 [258] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:05,154 [258] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/88787e79-6a73-4481-9952-3ba0718004cf'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'extra_args': {}, 'callbacks': [], 'size': 580} gunicorn-registry stdout | 2025-09-26 08:37:05,154 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,154 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,154 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,154 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,154 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,154 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,154 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,155 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,155 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,155 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,155 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:05,155 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:05,155 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:05,155 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:05,155 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,155 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,155 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,155 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/88787e79-6a73-4481-9952-3ba0718004cf', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/88787e79-6a73-4481-9952-3ba0718004cf', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:05,155 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,155 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,155 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,155 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,155 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,155 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:05,156 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/88787e79-6a73-4481-9952-3ba0718004cf gunicorn-registry stdout | x-amz-date:20250926T083705Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:05,156 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083705Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | ac68e2394d69482a102bcb56698c4366671072afdfc785d8108777f6518bb9fe gunicorn-registry stdout | 2025-09-26 08:37:05,156 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | e3a493f7147b5f4383a30a66cf7cd4fd5631a6dd88e0136e6d8c3bbf1b40696c gunicorn-registry stdout | 2025-09-26 08:37:05,156 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,156 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,156 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:05,156 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:05,156 [258] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:05,183 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:37:05,183 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l94hy-5dqxk1-19je', 'x-amz-id-2': 'mg0l94hy-5dqxk1-19je', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:37:05 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:05,183 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:37:05.000Z"7478be6b88f1ffd40bbbd0969bfa45ef-1"' gunicorn-registry stdout | 2025-09-26 08:37:05,183 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,183 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:05,183 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:05,184 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:05,184 [258] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:05,184 [258] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 70b291ec-6481-4f21-89a2-1180bc6e4efe with digest sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655 took 0.04029369354248047 seconds gunicorn-registry stdout | 2025-09-26 08:37:05,187 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['70b291ec-6481-4f21-89a2-1180bc6e4efe', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,189 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,190 [258] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['a4d27724-286e-4842-be05-e33cb13571b7', 580, None, True, True, 'sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655']) gunicorn-registry stdout | 2025-09-26 08:37:05,190 [258] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [44, 9]) gunicorn-registry stdout | 2025-09-26 08:37:05,191 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,192 [258] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [2, 44, datetime.datetime(2025, 9, 26, 8, 37, 5, 192002), datetime.datetime(2025, 9, 26, 9, 37, 5, 191985)]) gunicorn-registry stdout | 2025-09-26 08:37:05,192 [258] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [43]) gunicorn-registry stdout | 2025-09-26 08:37:05,194 [258] [DEBUG] [app] Ending request: urn:request:073c00e2-0ad7-4fdf-b211-9d9d1be0fb4c (/v2/testorg/alpine/blobs/uploads/70b291ec-6481-4f21-89a2-1180bc6e4efe) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:073c00e2-0ad7-4fdf-b211-9d9d1be0fb4c', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/70b291ec-6481-4f21-89a2-1180bc6e4efe?digest=sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'path': '/v2/testorg/alpine/blobs/uploads/70b291ec-6481-4f21-89a2-1180bc6e4efe', 'parameters': {'digest': 'sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:05,195 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:05,195 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:05,195 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:05 +0000] "PUT /v2/testorg/alpine/blobs/uploads/70b291ec-6481-4f21-89a2-1180bc6e4efe?digest=sha256%3Ad70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:05 +0000] "PUT /v2/testorg/alpine/blobs/uploads/70b291ec-6481-4f21-89a2-1180bc6e4efe?digest=sha256%3Ad70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.098 1849 0.098) gunicorn-registry stdout | 2025-09-26 08:37:05,635 [258] [DEBUG] [app] Starting request: urn:request:317b690f-4a74-4ac7-9dca-a594f8f9a312 (/v2/testorg/alpine/blobs/sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:05,635 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:05,635 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:05,635 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:05,636 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:05,636 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:05,636 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:05,636 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:05,636 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:37:05,637 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,639 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,640 [258] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:05,640 [258] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e_2 gunicorn-registry stdout | 2025-09-26 08:37:05,641 [258] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:05,642 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,643 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,644 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,645 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,646 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,647 [258] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e_2: None gunicorn-registry stdout | 2025-09-26 08:37:05,647 [258] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e_2: None gunicorn-registry stdout | 2025-09-26 08:37:05,647 [258] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:05,647 [258] [DEBUG] [app] Ending request: urn:request:317b690f-4a74-4ac7-9dca-a594f8f9a312 (/v2/testorg/alpine/blobs/sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:317b690f-4a74-4ac7-9dca-a594f8f9a312', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 'path': '/v2/testorg/alpine/blobs/sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:05,647 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:05,647 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:05,648 [258] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:05 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:05 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.014 1714 0.014) gunicorn-registry stdout | 2025-09-26 08:37:05,818 [251] [DEBUG] [app] Starting request: urn:request:4c079df0-34b4-4768-b084-ab068422ecb5 (/v2/testorg/alpine/blobs/sha256:46fe55b2f760b35f41708fb01116dae87029350fffeb1d00f7dd0520587195c5) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:05,818 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:46fe55b2f760b35f41708fb01116dae87029350fffeb1d00f7dd0520587195c5', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:05,818 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:05,818 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:05,819 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:05,819 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:05,819 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:05,819 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:05,819 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:37:05,819 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,821 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,822 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:05,823 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg_alpine_sha256:46fe55b2f760b35f41708fb01116dae87029350fffeb1d00f7dd0520587195c5_2 gunicorn-registry stdout | 2025-09-26 08:37:05,823 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg_alpine_sha256:46fe55b2f760b35f41708fb01116dae87029350fffeb1d00f7dd0520587195c5_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:05,823 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,825 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,825 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,826 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:46fe55b2f760b35f41708fb01116dae87029350fffeb1d00f7dd0520587195c5', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,828 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:46fe55b2f760b35f41708fb01116dae87029350fffeb1d00f7dd0520587195c5', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:05,829 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg_alpine_sha256:46fe55b2f760b35f41708fb01116dae87029350fffeb1d00f7dd0520587195c5_2: None gunicorn-registry stdout | 2025-09-26 08:37:05,829 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg_alpine_sha256:46fe55b2f760b35f41708fb01116dae87029350fffeb1d00f7dd0520587195c5_2: None gunicorn-registry stdout | 2025-09-26 08:37:05,829 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:05,829 [251] [DEBUG] [app] Ending request: urn:request:4c079df0-34b4-4768-b084-ab068422ecb5 (/v2/testorg/alpine/blobs/sha256:46fe55b2f760b35f41708fb01116dae87029350fffeb1d00f7dd0520587195c5) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:4c079df0-34b4-4768-b084-ab068422ecb5', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/sha256:46fe55b2f760b35f41708fb01116dae87029350fffeb1d00f7dd0520587195c5', 'path': '/v2/testorg/alpine/blobs/sha256:46fe55b2f760b35f41708fb01116dae87029350fffeb1d00f7dd0520587195c5', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:05,829 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:05,829 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:05,829 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:05 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:46fe55b2f760b35f41708fb01116dae87029350fffeb1d00f7dd0520587195c5 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:05 +0000] "HEAD /v2/testorg/alpine/blobs/sha256:46fe55b2f760b35f41708fb01116dae87029350fffeb1d00f7dd0520587195c5 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.012 1714 0.012) gunicorn-registry stdout | 2025-09-26 08:37:06,030 [251] [DEBUG] [app] Starting request: urn:request:e98011c8-6a51-4b99-9425-d601cf8dd930 (/v2/testorg/alpine/blobs/uploads/4ee4ac13-65ef-457a-a767-cc308c15de01) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:06,030 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '4ee4ac13-65ef-457a-a767-cc308c15de01', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:06,030 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:06,030 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:06,031 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:06,031 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:06,031 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:06,031 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:06,031 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:37:06,032 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:06,033 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:06,034 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:06,035 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:06,036 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:06,037 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:06,038 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:06,039 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:37:06,040 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['4ee4ac13-65ef-457a-a767-cc308c15de01', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:06,041 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:06,041 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:06,041 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:06,042 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:06,042 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:06,042 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,042 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,042 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,042 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,042 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,042 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,042 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,042 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,043 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:06,043 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:06,043 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:06,043 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:06,043 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,043 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,043 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,043 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:06,043 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,043 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,043 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,044 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,044 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:06,044 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083706Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:06,044 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083706Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 85f327f37f0f21968909ebd962fd6c56640342f38a24ae91158f9e18233a5e97 gunicorn-registry stdout | 2025-09-26 08:37:06,044 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | f52bd8d1b1543dd7b90825555fb91630dc744acb0c1f68e4d76e1d7df5aa3a89 gunicorn-registry stdout | 2025-09-26 08:37:06,044 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,044 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:06,044 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:06,050 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:06,050 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l956l-3ise28-g7v', 'x-amz-id-2': 'mg0l956l-3ise28-g7v', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:06 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:06,050 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d7920203468d650b2d73ec60008f93497' gunicorn-registry stdout | 2025-09-26 08:37:06,050 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,050 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:06,050 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,050 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l956l-3ise28-g7v', 'HostId': 'mg0l956l-3ise28-g7v', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l956l-3ise28-g7v', 'x-amz-id-2': 'mg0l956l-3ise28-g7v', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:06 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034', 'UploadId': '68d650b2d73ec60008f93497'} gunicorn-registry stdout | 2025-09-26 08:37:06,050 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:06,106 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:06,106 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:06,107 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034', 'UploadId': '68d650b2d73ec60008f93497', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b8846e80>, 'ContentLength': 79005} gunicorn-registry stdout | 2025-09-26 08:37:06,107 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,107 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,107 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,107 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,107 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,107 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,107 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,107 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,107 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:06,107 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:06,107 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:06,107 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:06,107 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,107 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,108 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:06,108 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,108 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,108 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034', 'query_string': {'uploadId': '68d650b2d73ec60008f93497', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '79005', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': '+t3V1Gf06Q5lVnjapgf0dw==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b8846e80>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034?uploadId=68d650b2d73ec60008f93497&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034', 'UploadId': '68d650b2d73ec60008f93497', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b8846e80>, 'ContentLength': 79005}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:06,108 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,108 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,108 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,108 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,108 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:06,108 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034 gunicorn-registry stdout | partNumber=1&uploadId=68d650b2d73ec60008f93497 gunicorn-registry stdout | content-length:79005 gunicorn-registry stdout | content-md5:+t3V1Gf06Q5lVnjapgf0dw== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083706Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:06,108 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083706Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | aaf89e97b06eff1b6c0f4ebf8dd9c2b5489f08bb5198a4cd23b238b68482c9e8 gunicorn-registry stdout | 2025-09-26 08:37:06,108 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 74691691e79e0453771ba3f437f92ea3a86beb94628c028e309c81ec6707f62a gunicorn-registry stdout | 2025-09-26 08:37:06,108 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,108 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:06,108 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:06,109 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:37:06,110 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:37:06,191 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034?uploadId=68d650b2d73ec60008f93497&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:06,191 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l958e-4l33ln-wsu', 'x-amz-id-2': 'mg0l958e-4l33ln-wsu', 'ETag': '"faddd5d467f4e90e655678daa607f477"', 'Date': 'Fri, 26 Sep 2025 08:37:06 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:06,191 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:06,191 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,191 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:06,191 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,191 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l958e-4l33ln-wsu', 'HostId': 'mg0l958e-4l33ln-wsu', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l958e-4l33ln-wsu', 'x-amz-id-2': 'mg0l958e-4l33ln-wsu', 'etag': '"faddd5d467f4e90e655678daa607f477"', 'date': 'Fri, 26 Sep 2025 08:37:06 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"faddd5d467f4e90e655678daa607f477"'} gunicorn-registry stdout | 2025-09-26 08:37:06,191 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034', 'UploadId': '68d650b2d73ec60008f93497', 'MultipartUpload': {'Parts': [{'ETag': '"faddd5d467f4e90e655678daa607f477"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:06,191 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,191 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,191 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,192 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,192 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,192 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,192 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,192 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:06,192 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:06,192 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:06,192 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:06,192 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,192 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,192 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,192 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034', 'query_string': {'uploadId': '68d650b2d73ec60008f93497'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"faddd5d467f4e90e655678daa607f477"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034?uploadId=68d650b2d73ec60008f93497', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034', 'UploadId': '68d650b2d73ec60008f93497', 'MultipartUpload': {'Parts': [{'ETag': '"faddd5d467f4e90e655678daa607f477"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:06,192 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,192 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,192 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,192 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,193 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:06,193 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034 gunicorn-registry stdout | uploadId=68d650b2d73ec60008f93497 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:292b2f23118091f5ecca5e1f4f77eac75f374000568ac1615d97f01e643f97bf gunicorn-registry stdout | x-amz-date:20250926T083706Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 292b2f23118091f5ecca5e1f4f77eac75f374000568ac1615d97f01e643f97bf gunicorn-registry stdout | 2025-09-26 08:37:06,193 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083706Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 164c57b31efb31f35cd5b017595948b4e595ef368f3ded5827c17601e138a5bf gunicorn-registry stdout | 2025-09-26 08:37:06,193 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | f33a94cf0181affeb4696e94e519015fd49ace1cc41d94ef862958e878defab1 gunicorn-registry stdout | 2025-09-26 08:37:06,193 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,193 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:06,193 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:06,208 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034?uploadId=68d650b2d73ec60008f93497 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:06,208 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l95aq-5zdn0p-d2v', 'x-amz-id-2': 'mg0l95aq-5zdn0p-d2v', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:06 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:06,208 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034"1e89c8aabad0ee9c0a82c35ddf9cf538-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034?uploadId=68d650b2d73ec60008f93497' gunicorn-registry stdout | 2025-09-26 08:37:06,208 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,209 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,209 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:06,209 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,209 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l95aq-5zdn0p-d2v', 'HostId': 'mg0l95aq-5zdn0p-d2v', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l95aq-5zdn0p-d2v', 'x-amz-id-2': 'mg0l95aq-5zdn0p-d2v', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:06 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034?uploadId=68d650b2d73ec60008f93497', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034', 'ETag': '"1e89c8aabad0ee9c0a82c35ddf9cf538-1"'} gunicorn-registry stdout | 2025-09-26 08:37:06,209 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:06,210 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:06,210 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 79005 bytes to blob 4ee4ac13-65ef-457a-a767-cc308c15de01 took 0.16875886917114258 seconds gunicorn-registry stdout | 2025-09-26 08:37:06,210 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['4ee4ac13-65ef-457a-a767-cc308c15de01', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:06,212 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, '4ee4ac13-65ef-457a-a767-cc308c15de01', 79005, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwaGlwVHlwZSI6IkdFTkVSQVRFRF9GUk9NIn1dfX1iMjIxNTNmYzZhNGY4ZWM5NmRkMTM1OCIsInJlbGF0aW9ucx0AAAAAAAAAAKQJAAAAAAD9DHkg3iZQxG2qvjgtw5WxKJlT6Vp9W7seMCCNQmPc2pRiLg==', 9, '{"chunks": [["uploads/e4d042f8-3044-4239-b929-db4d79202034", 0, 79005]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 37, 5, 983577), None, None, 45]) gunicorn-registry stdout | 2025-09-26 08:37:06,213 [251] [DEBUG] [app] Ending request: urn:request:e98011c8-6a51-4b99-9425-d601cf8dd930 (/v2/testorg/alpine/blobs/uploads/4ee4ac13-65ef-457a-a767-cc308c15de01) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:e98011c8-6a51-4b99-9425-d601cf8dd930', 'remote_addr': '10.129.4.11', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/4ee4ac13-65ef-457a-a767-cc308c15de01', 'path': '/v2/testorg/alpine/blobs/uploads/4ee4ac13-65ef-457a-a767-cc308c15de01', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:06,214 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:06,214 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:06,214 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:06 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/4ee4ac13-65ef-457a-a767-cc308c15de01 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:06 +0000] "PATCH /v2/testorg/alpine/blobs/uploads/4ee4ac13-65ef-457a-a767-cc308c15de01 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.185 80779 0.185) gunicorn-registry stdout | 2025-09-26 08:37:06,255 [251] [DEBUG] [app] Starting request: urn:request:d7cebcf3-ba65-43d7-86b7-9c98364adf67 (/v2/testorg/alpine/blobs/uploads/4ee4ac13-65ef-457a-a767-cc308c15de01) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:06,255 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '4ee4ac13-65ef-457a-a767-cc308c15de01', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:06,255 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:06,255 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:06,256 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:06,256 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:06,256 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:06,256 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:06,257 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:37:06,257 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:06,259 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:06,259 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:06,260 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:06,261 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:06,262 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:06,263 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:06,264 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) gunicorn-registry stdout | 2025-09-26 08:37:06,264 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['4ee4ac13-65ef-457a-a767-cc308c15de01', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:06,265 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:06,265 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:06,265 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:06,266 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:06,266 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/82af2924-1b8f-4554-b3bf-04f25ea99613', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:06,266 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,266 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,266 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,266 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,266 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,266 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,267 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,267 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,267 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:06,267 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:06,267 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:06,267 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:06,267 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,267 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,267 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,267 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/82af2924-1b8f-4554-b3bf-04f25ea99613?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/82af2924-1b8f-4554-b3bf-04f25ea99613', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/82af2924-1b8f-4554-b3bf-04f25ea99613?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/82af2924-1b8f-4554-b3bf-04f25ea99613', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:06,267 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,267 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,267 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,267 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,267 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:06,267 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/82af2924-1b8f-4554-b3bf-04f25ea99613 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083706Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:06,268 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083706Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | b6bb6a9aca0c2634524f6b6c02de2551ca591b321cba03cd008287ca00dfd68f gunicorn-registry stdout | 2025-09-26 08:37:06,268 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | aa1108b55a63d9fe11c58e5387fe54f19a4ef8be8291e368a41b3c4d34b576e2 gunicorn-registry stdout | 2025-09-26 08:37:06,268 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,268 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:06,268 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:06,274 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/82af2924-1b8f-4554-b3bf-04f25ea99613?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:06,274 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l95cu-78astr-vzh', 'x-amz-id-2': 'mg0l95cu-78astr-vzh', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:06 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:06,274 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/82af2924-1b8f-4554-b3bf-04f25ea9961368d650b2d73ec60008f934a3' gunicorn-registry stdout | 2025-09-26 08:37:06,274 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,274 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:06,274 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,274 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l95cu-78astr-vzh', 'HostId': 'mg0l95cu-78astr-vzh', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l95cu-78astr-vzh', 'x-amz-id-2': 'mg0l95cu-78astr-vzh', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:06 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/82af2924-1b8f-4554-b3bf-04f25ea99613', 'UploadId': '68d650b2d73ec60008f934a3'} gunicorn-registry stdout | 2025-09-26 08:37:06,275 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:06,275 [251] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/82af2924-1b8f-4554-b3bf-04f25ea99613', 'UploadId': '68d650b2d73ec60008f934a3'} gunicorn-registry stdout | 2025-09-26 08:37:06,275 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,275 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,275 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,275 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,276 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,276 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,276 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:06,276 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:06,276 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:06,276 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:06,276 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,276 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,276 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,276 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/82af2924-1b8f-4554-b3bf-04f25ea99613', 'query_string': {'uploadId': '68d650b2d73ec60008f934a3'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/82af2924-1b8f-4554-b3bf-04f25ea99613', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/82af2924-1b8f-4554-b3bf-04f25ea99613?uploadId=68d650b2d73ec60008f934a3', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/82af2924-1b8f-4554-b3bf-04f25ea99613', 'UploadId': '68d650b2d73ec60008f934a3'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:06,276 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,276 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,276 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,276 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,276 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:06,276 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/82af2924-1b8f-4554-b3bf-04f25ea99613 gunicorn-registry stdout | uploadId=68d650b2d73ec60008f934a3 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083706Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:06,277 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083706Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 1b324cf66438093e2d680fd251ab940442e5ce7b1b4c724455e1803475420207 gunicorn-registry stdout | 2025-09-26 08:37:06,277 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 7b69e50cea9372370726d97b7172d7161626a1315bc6b94147ce8e9fa0ac6a0f gunicorn-registry stdout | 2025-09-26 08:37:06,277 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,277 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:06,277 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:06,283 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/82af2924-1b8f-4554-b3bf-04f25ea99613?uploadId=68d650b2d73ec60008f934a3 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:37:06,284 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l95d2-7dbghf-3cb', 'x-amz-id-2': 'mg0l95d2-7dbghf-3cb', 'Date': 'Fri, 26 Sep 2025 08:37:06 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:06,284 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:06,284 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,284 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:06,284 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,284 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l95d2-7dbghf-3cb', 'HostId': 'mg0l95d2-7dbghf-3cb', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l95d2-7dbghf-3cb', 'x-amz-id-2': 'mg0l95d2-7dbghf-3cb', 'date': 'Fri, 26 Sep 2025 08:37:06 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:37:06,284 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 4ee4ac13-65ef-457a-a767-cc308c15de01 took 0.018800735473632812 seconds gunicorn-registry stdout | 2025-09-26 08:37:06,285 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['4ee4ac13-65ef-457a-a767-cc308c15de01', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:06,286 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [2, '4ee4ac13-65ef-457a-a767-cc308c15de01', 79005, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwaGlwVHlwZSI6IkdFTkVSQVRFRF9GUk9NIn1dfX1iMjIxNTNmYzZhNGY4ZWM5NmRkMTM1OCIsInJlbGF0aW9ucx0AAAAAAAAAAKQJAAAAAAD9DHkg3iZQxG2qvjgtw5WxKJlT6Vp9W7seMCCNQmPc2pRiLg==', 9, '{"chunks": [["uploads/e4d042f8-3044-4239-b929-db4d79202034", 0, 79005]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 37, 5, 983577), None, None, 45]) gunicorn-registry stdout | 2025-09-26 08:37:06,287 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:06,287 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:06,287 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:06,288 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:06,288 [251] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/fd/fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e'} gunicorn-registry stdout | 2025-09-26 08:37:06,288 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,288 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,288 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,288 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,288 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,288 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,288 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,289 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:06,289 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:06,289 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:06,289 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:06,289 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,289 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,289 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,289 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/fd/fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fd/fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fd/fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/fd/fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:06,289 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,289 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,289 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,289 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,289 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:06,289 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fd/fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083706Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:06,289 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083706Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 25f0042ba077cb4bbcaa594600569a660660d305d4162ad1fd9e906a2172b2d2 gunicorn-registry stdout | 2025-09-26 08:37:06,290 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 464f99eea96d94b41d8137ce9d8e41dedc74ca679fbcdaea8928157c2a1840f1 gunicorn-registry stdout | 2025-09-26 08:37:06,290 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,290 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:06,290 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:06,295 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fd/fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:37:06,295 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l95df-7l6yew-su3', 'x-amz-id-2': 'mg0l95df-7l6yew-su3', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:06 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:06,295 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:06,295 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,295 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:06,295 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,295 [251] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:37:06,295 [251] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:37:06,295 [251] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/fd/fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e gunicorn-registry stdout | 2025-09-26 08:37:06,296 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:06,296 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:06,296 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:06,296 [251] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:37:06,296 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,296 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,296 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,296 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,296 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,296 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,296 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,297 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:06,297 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:06,297 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:06,297 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:06,297 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,297 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,297 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,297 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:06,297 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,297 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,297 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,297 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,297 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,297 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:06,297 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083706Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:06,297 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083706Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 8321b3fc59291912900ba5743b6ffed48b2f428be421d04faecdc91fc266f09e gunicorn-registry stdout | 2025-09-26 08:37:06,297 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 5bd46836ebbd8dd5c4471445acddabac8305e749f8f0f2bed2ab22a97a503aaf gunicorn-registry stdout | 2025-09-26 08:37:06,298 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,298 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,298 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:06,298 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:06,303 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:06,303 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l95dn-7pu5il-90k', 'x-amz-id-2': 'mg0l95dn-7pu5il-90k', 'ETag': '"1e89c8aabad0ee9c0a82c35ddf9cf538-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:06 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '79005', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:06 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:06,303 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:06,303 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,303 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:06,303 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,304 [251] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/fd/fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:37:06,304 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:06,304 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/fd/fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:06,304 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/fd/fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:06,304 [251] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/fd/fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/fd/fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 'extra_args': {}, 'callbacks': [], 'size': 79005} gunicorn-registry stdout | 2025-09-26 08:37:06,304 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,304 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,304 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,304 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,304 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,304 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,304 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,304 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,304 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,304 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,304 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:06,304 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:06,304 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:06,304 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:06,304 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,305 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,305 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,305 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/fd/fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fd/fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fd/fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/fd/fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:06,305 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,305 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,305 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,305 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,305 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,305 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:06,305 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fd/fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4d042f8-3044-4239-b929-db4d79202034 gunicorn-registry stdout | x-amz-date:20250926T083706Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:06,305 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083706Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 5e3c4d6e3bcf290eba72a78bdc29ce199aa6d8fb2fb22123bd663ed81847b2df gunicorn-registry stdout | 2025-09-26 08:37:06,305 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | dc37f5a399fda85b65528331bc913937245b197b2d6f84705f70e762d0ccb2df gunicorn-registry stdout | 2025-09-26 08:37:06,306 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,306 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,306 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:06,306 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:06,306 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:06,330 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fd/fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:37:06,330 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l95dv-7ui48p-5wv', 'x-amz-id-2': 'mg0l95dv-7ui48p-5wv', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:37:06 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:06,330 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:37:06.000Z"1e89c8aabad0ee9c0a82c35ddf9cf538-1"' gunicorn-registry stdout | 2025-09-26 08:37:06,330 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,330 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:06,331 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:06,331 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:06,331 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:06,331 [251] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 4ee4ac13-65ef-457a-a767-cc308c15de01 with digest sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e took 0.03579211235046387 seconds gunicorn-registry stdout | 2025-09-26 08:37:06,332 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['4ee4ac13-65ef-457a-a767-cc308c15de01', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:06,333 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 1, 0]) logrotateworker stdout | 2025-09-26 08:37:06,334 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gunicorn-registry stdout | 2025-09-26 08:37:06,334 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['ea553609-7cf4-4377-a2d5-feafff1e75f2', 79005, None, True, True, 'sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e']) gunicorn-registry stdout | 2025-09-26 08:37:06,335 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [46, 9]) gunicorn-registry stdout | 2025-09-26 08:37:06,335 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:06,336 [251] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [2, 46, datetime.datetime(2025, 9, 26, 8, 37, 6, 336131), datetime.datetime(2025, 9, 26, 9, 37, 6, 336116)]) gunicorn-registry stdout | 2025-09-26 08:37:06,336 [251] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [45]) gunicorn-registry stdout | 2025-09-26 08:37:06,339 [251] [DEBUG] [app] Ending request: urn:request:d7cebcf3-ba65-43d7-86b7-9c98364adf67 (/v2/testorg/alpine/blobs/uploads/4ee4ac13-65ef-457a-a767-cc308c15de01) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:d7cebcf3-ba65-43d7-86b7-9c98364adf67', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/blobs/uploads/4ee4ac13-65ef-457a-a767-cc308c15de01?digest=sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 'path': '/v2/testorg/alpine/blobs/uploads/4ee4ac13-65ef-457a-a767-cc308c15de01', 'parameters': {'digest': 'sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:06,339 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:06,339 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:06,340 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:06 +0000] "PUT /v2/testorg/alpine/blobs/uploads/4ee4ac13-65ef-457a-a767-cc308c15de01?digest=sha256%3Afdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:06 +0000] "PUT /v2/testorg/alpine/blobs/uploads/4ee4ac13-65ef-457a-a767-cc308c15de01?digest=sha256%3Afdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.084 1849 0.085) gcworker stdout | 2025-09-26 08:37:07,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:37:07,085 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:27.083344+00:00 (in 19.997471 seconds) gcworker stdout | 2025-09-26 08:37:07,086 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:37 GMT)" (scheduled at 2025-09-26 08:37:07.085344+00:00) gcworker stdout | 2025-09-26 08:37:07,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gcworker stdout | 2025-09-26 08:37:07,098 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875527091, None, 1, 0]) gcworker stdout | 2025-09-26 08:37:07,099 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:37:07,100 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:37 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:37:07,149 [257] [DEBUG] [app] Starting request: urn:request:4ca7a458-11e0-45fa-94f6-4463f92184d3 (/v2/testorg/alpine/manifests/sha256:b10cbe44bc0377ff7e0942c2e9ed9a655d050e577ac4bc8852b7868cc304f098) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:07,151 [257] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'manifest_ref': 'sha256:b10cbe44bc0377ff7e0942c2e9ed9a655d050e577ac4bc8852b7868cc304f098', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:07,151 [257] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:07,151 [257] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:07,152 [257] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:07,152 [257] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:07,152 [257] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:07,152 [257] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:07,152 [257] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:37:07,154 [257] [DEBUG] [data.cache.cache_key] Loading repository lookup from cache_key: repository_lookup_testorg_alpine gunicorn-registry stdout | 2025-09-26 08:37:07,154 [257] [DEBUG] [data.cache.impl] Checking cache for key repository_lookup_testorg_alpine gunicorn-registry stdout | 2025-09-26 08:37:07,154 [257] [DEBUG] [data.cache.impl] Found result in cache for key repository_lookup_testorg_alpine: {'id': 2, 'visibility': {'id': 2, 'name': 'private'}, 'kind': {'id': 1, 'name': 'image'}, 'state': 0, 'namespace_user': {'stripe_id': None}} gunicorn-registry stdout | 2025-09-26 08:37:07,155 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:b10cbe44bc0377ff7e0942c2e9ed9a655d050e577ac4bc8852b7868cc304f098', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,158 [257] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL ((SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "uploadedblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1") UNION ALL (SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "uploadedblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q2"))', [2, 'sha256:46fe55b2f760b35f41708fb01116dae87029350fffeb1d00f7dd0520587195c5', 1, 2, 'sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 1, 2, 'sha256:dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31', 1]) gunicorn-registry stdout | 2025-09-26 08:37:07,160 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."digest" = %s) AND ("t1"."repository_id" = %s)) LIMIT %s OFFSET %s', ['sha256:b10cbe44bc0377ff7e0942c2e9ed9a655d050e577ac4bc8852b7868cc304f098', 2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,161 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "mediatype" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:37:07,163 [257] [DEBUG] [peewee] ('INSERT INTO "manifest" ("repository_id", "digest", "media_type_id", "manifest_bytes", "config_media_type", "layers_compressed_size", "subject", "subject_backfilled", "artifact_type", "artifact_type_backfilled") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifest"."id"', [2, 'sha256:b10cbe44bc0377ff7e0942c2e9ed9a655d050e577ac4bc8852b7868cc304f098', 18, '{\n "schemaVersion": 2,\n "mediaType": "application/vnd.oci.image.manifest.v1+json",\n "config": {\n "mediaType": "application/vnd.oci.image.config.v1+json",\n "digest": "sha256:dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31",\n "size": 241\n },\n "layers": [\n {\n "mediaType": "application/vnd.in-toto+json",\n "digest": "sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e",\n "size": 79005,\n "annotations": {\n "in-toto.io/predicate-type": "https://spdx.dev/Document"\n }\n },\n {\n "mediaType": "application/vnd.in-toto+json",\n "digest": "sha256:46fe55b2f760b35f41708fb01116dae87029350fffeb1d00f7dd0520587195c5",\n "size": 5678,\n "annotations": {\n "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2"\n }\n }\n ]\n}', 'application/vnd.oci.image.config.v1+json', 84683, None, True, None, True]) gunicorn-registry stdout | 2025-09-26 08:37:07,164 [257] [DEBUG] [peewee] ('INSERT INTO "manifestblob" ("repository_id", "manifest_id", "blob_id") VALUES (%s, %s, %s), (%s, %s, %s), (%s, %s, %s) RETURNING "manifestblob"."id"', [2, 17, 45, 2, 17, 46, 2, 17, 47]) gunicorn-registry stdout | 2025-09-26 08:37:07,165 [257] [DEBUG] [peewee] ('SELECT "t1"."namespace_user_id" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,166 [257] [DEBUG] [peewee] ('SELECT 1 FROM "user" AS "t1" WHERE ((("t1"."id" = %s) AND "t1"."enabled") AND NOT "t1"."robot") LIMIT %s', [3, 1]) gunicorn-registry stdout | 2025-09-26 08:37:07,167 [257] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [3, 45, 17, 1]) gunicorn-registry stdout | 2025-09-26 08:37:07,167 [257] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [3, 46, 17, 1]) gunicorn-registry stdout | 2025-09-26 08:37:07,168 [257] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [3, 47, 17, 1]) gunicorn-registry stdout | 2025-09-26 08:37:07,168 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,169 [257] [INFO] [data.model.quota] updating namespace size for manifest 17 in namespace 3, QuotaOperation.ADD 84924 gunicorn-registry stdout | 2025-09-26 08:37:07,169 [257] [DEBUG] [peewee] ('UPDATE "quotanamespacesize" SET "size_bytes" = ("quotanamespacesize"."size_bytes" + %s) WHERE ("quotanamespacesize"."namespace_user_id" = %s)', [84924, 3]) gunicorn-registry stdout | 2025-09-26 08:37:07,170 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotarepositorysize" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,170 [257] [INFO] [data.model.quota] updating repository size for manifest 17 in repository 2, QuotaOperation.ADD 84924 gunicorn-registry stdout | 2025-09-26 08:37:07,170 [257] [DEBUG] [peewee] ('UPDATE "quotarepositorysize" SET "size_bytes" = ("quotarepositorysize"."size_bytes" + %s) WHERE ("quotarepositorysize"."repository_id" = %s)', [84924, 2]) gunicorn-registry stdout | 2025-09-26 08:37:07,171 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [17, None, 1758879427171, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,173 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "tagkind" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:37:07,173 [257] [DEBUG] [peewee] ('INSERT INTO "tag" ("name", "repository_id", "manifest_id", "lifetime_start_ms", "lifetime_end_ms", "immutable", "hidden", "reversion", "tag_kind_id") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "tag"."id"', ['$temp-3f14e4d3-0f32-4042-982a-8b7a77ce0e30', 2, 17, 1758875827171, 1758879427171, False, True, False, 1]) gunicorn-registry stdout | 2025-09-26 08:37:07,176 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,177 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['d7873bc6-4118-430a-b483-9f08d2b41d65']) gunicorn-registry stdout | 2025-09-26 08:37:07,178 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:07,179 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:07,179 [257] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31'} gunicorn-registry stdout | 2025-09-26 08:37:07,180 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,180 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,180 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,180 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,180 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,180 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,180 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,180 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:07,180 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:07,180 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:07,180 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:07,181 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,181 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,181 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,181 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:07,181 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,181 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,181 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,181 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,182 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:07,182 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083707Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:07,182 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083707Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | c24dd7f770d1a51abd69dd963ce4c91f974e82ceb099a38989f62fbfc07c4e34 gunicorn-registry stdout | 2025-09-26 08:37:07,182 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 17e8217dd99e129ea882800690073816f11280ea6679cc27097627cf942fe7d1 gunicorn-registry stdout | 2025-09-26 08:37:07,182 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,182 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:07,182 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:07,240 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31 HTTP/1.1" 200 241 gunicorn-registry stdout | 2025-09-26 08:37:07,240 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9627-5t13bp-15ad', 'x-amz-id-2': 'mg0l9627-5t13bp-15ad', 'ETag': '"53322718ebdc1748c36dd9ac59b3279e-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:07,240 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:07,241 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,241 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:07,241 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,241 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9627-5t13bp-15ad', 'HostId': 'mg0l9627-5t13bp-15ad', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9627-5t13bp-15ad', 'x-amz-id-2': 'mg0l9627-5t13bp-15ad', 'etag': '"53322718ebdc1748c36dd9ac59b3279e-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:07 GMT', 'content-type': 'application/octet-stream', 'content-length': '241', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 7, tzinfo=tzutc()), 'ContentLength': 241, 'ETag': '"53322718ebdc1748c36dd9ac59b3279e-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:07,243 [257] [DEBUG] [app] Ending request: urn:request:4ca7a458-11e0-45fa-94f6-4463f92184d3 (/v2/testorg/alpine/manifests/sha256:b10cbe44bc0377ff7e0942c2e9ed9a655d050e577ac4bc8852b7868cc304f098) {'endpoint': 'v2.write_manifest_by_digest', 'request_id': 'urn:request:4ca7a458-11e0-45fa-94f6-4463f92184d3', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/manifests/sha256:b10cbe44bc0377ff7e0942c2e9ed9a655d050e577ac4bc8852b7868cc304f098', 'path': '/v2/testorg/alpine/manifests/sha256:b10cbe44bc0377ff7e0942c2e9ed9a655d050e577ac4bc8852b7868cc304f098', 'parameters': {}, 'json_body': {'schemaVersion': 2, 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'config': {'mediaType': 'application/vnd.oci.image.config.v1+json', 'digest': 'sha256:dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31', 'size': 241}, 'layers': [{'mediaType': 'application/vnd.in-toto+json', 'digest': 'sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 'size': 79005, 'annotations': {'in-toto.io/predicate-type': 'https://spdx.dev/Document'}}, {'mediaType': 'application/vnd.in-toto+json', 'digest': 'sha256:46fe55b2f760b35f41708fb01116dae87029350fffeb1d00f7dd0520587195c5', 'size': 5678, 'annotations': {'in-toto.io/predicate-type': 'https://slsa.dev/provenance/v0.2'}}]}, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:07,244 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:07,244 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:07,244 [257] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:07 +0000] "PUT /v2/testorg/alpine/manifests/sha256:b10cbe44bc0377ff7e0942c2e9ed9a655d050e577ac4bc8852b7868cc304f098 HTTP/1.1" 201 2 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:07 +0000] "PUT /v2/testorg/alpine/manifests/sha256:b10cbe44bc0377ff7e0942c2e9ed9a655d050e577ac4bc8852b7868cc304f098 HTTP/1.1" 201 2 "-" "skopeo/1.14.5" (0.096 2657 0.096) gunicorn-registry stdout | 2025-09-26 08:37:07,286 [257] [DEBUG] [app] Starting request: urn:request:eaeceffe-55ee-4e07-b4dd-a47b8cd683c3 (/v2/testorg/alpine/manifests/alpine1) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:07,286 [257] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'manifest_ref': 'alpine1', 'namespace_name': 'testorg', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:07,286 [257] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:07,286 [257] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1NzkyLCJpYXQiOjE3NTg4NzU3OTIsImV4cCI6MTc1ODg3OTM5Miwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZy9hbHBpbmUiLCJhY3Rpb25zIjpbInB1c2giLCJwdWxsIl19XSwiY29udGV4dCI6eyJ2ZXJzaW9uIjoyLCJlbnRpdHlfa2luZCI6InVzZXIiLCJlbnRpdHlfcmVmZXJlbmNlIjoiOWY3NzZkY2UtNzM0Ny00YjY5LThiZDUtMzYyMTAzNGRiMjNjIiwia2luZCI6InVzZXIiLCJ1c2VyIjoicXVheSIsImNvbS5hcG9zdGlsbGUucm9vdHMiOnsidGVzdG9yZy9hbHBpbmUiOiIkZGlzYWJsZWQifSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.aKvv9GBRWiqOovsPoU771bN6sAK9me-_jlqbqSrKkxfV6sHfXymJfV4qOHcPNJ2XffgSwO-BUOKbUiudBYidpNMYtb_ydYoQxNjbmYgD0AyC_cQ5K4Do06LLlcekkuqjIRJVh513V37Ea-uIjgsVCEsb0S5zsgnVjxUuEaE2yV9YlSnMjoT7ZJWf4TERewg2JUTHPBoM0Lt9xuO6ny8-dV11T8OOquVyxYs7vIto7g20ulZim156JOY3BA-rwDmoFZ1fwmC0Sh0xLaIKsBlO_1uj94CQopeqen5EoJMtivf-Ris1vTnaueyQcGRsBSjTpXUeNMtHatiQj_G1MFbZIw gunicorn-registry stdout | 2025-09-26 08:37:07,287 [257] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:07,287 [257] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:07,287 [257] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:07,287 [257] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:07,287 [257] [DEBUG] [endpoints.v2] Checking permission for repo: testorg/alpine gunicorn-registry stdout | 2025-09-26 08:37:07,289 [257] [DEBUG] [data.cache.cache_key] Loading repository lookup from cache_key: repository_lookup_testorg_alpine gunicorn-registry stdout | 2025-09-26 08:37:07,289 [257] [DEBUG] [data.cache.impl] Checking cache for key repository_lookup_testorg_alpine gunicorn-registry stdout | 2025-09-26 08:37:07,289 [257] [DEBUG] [data.cache.impl] Found result in cache for key repository_lookup_testorg_alpine: {'id': 2, 'visibility': {'id': 2, 'name': 'private'}, 'kind': {'id': 1, 'name': 'image'}, 'state': 0, 'namespace_user': {'stripe_id': None}} gunicorn-registry stdout | 2025-09-26 08:37:07,290 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:8a1f59ffb675680d47db6337b49d22281a139e9d709335b492be023728e11715', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,291 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:08001109a7d679fe33b04fa51d681bd40b975d8f5cea8c3ef6c0eccb6a7338ce', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,293 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,294 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['c70b9ca4-ad69-46a9-b948-303fc64ae9fe']) gunicorn-registry stdout | 2025-09-26 08:37:07,295 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:07,296 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:07,296 [257] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61'} gunicorn-registry stdout | 2025-09-26 08:37:07,296 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,296 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,296 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,296 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,296 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,296 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,296 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,296 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:07,296 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:07,296 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:07,296 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:07,297 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,297 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,297 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,297 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:07,297 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,297 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,297 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,297 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,297 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:07,297 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083707Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:07,297 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083707Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | de45a8fdc63aa9517b688c011c6947bd2836769ab92c34bb5434be8af703ae10 gunicorn-registry stdout | 2025-09-26 08:37:07,297 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | ffff6864d4b32394df4eb5b8a3aa3a66a0bd2fad35c7cb3fa64e94d6ef45b77c gunicorn-registry stdout | 2025-09-26 08:37:07,297 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,297 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:07,298 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:07,312 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ce/cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61 HTTP/1.1" 200 581 gunicorn-registry stdout | 2025-09-26 08:37:07,312 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l965f-7ppges-1cgz', 'x-amz-id-2': 'mg0l965f-7ppges-1cgz', 'ETag': '"c953f11b655c667e87bf2e6d854fb992-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:34 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '581', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:07,312 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:07,312 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,312 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:07,313 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,313 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l965f-7ppges-1cgz', 'HostId': 'mg0l965f-7ppges-1cgz', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l965f-7ppges-1cgz', 'x-amz-id-2': 'mg0l965f-7ppges-1cgz', 'etag': '"c953f11b655c667e87bf2e6d854fb992-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:34 GMT', 'content-type': 'application/octet-stream', 'content-length': '581', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 34, tzinfo=tzutc()), 'ContentLength': 581, 'ETag': '"c953f11b655c667e87bf2e6d854fb992-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:07,315 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:08001109a7d679fe33b04fa51d681bd40b975d8f5cea8c3ef6c0eccb6a7338ce', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,316 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [2, None, 1758876127316, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,317 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:bd4199eb785a74df05d995ccf017888413746b5566e0b401b93a173859f0827f', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,319 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,320 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['35f63725-d817-4fe9-a541-a45a4218f4a4']) gunicorn-registry stdout | 2025-09-26 08:37:07,321 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:07,322 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:07,322 [257] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36'} gunicorn-registry stdout | 2025-09-26 08:37:07,322 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,322 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,322 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,322 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,322 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,322 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,323 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,323 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:07,323 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:07,323 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:07,323 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:07,323 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,323 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,323 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,323 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:07,323 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,323 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,323 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,323 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,323 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:07,323 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083707Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:07,323 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083707Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 3af31d4cadf9003cebd2654f7c98bb5743b1bf292adac69985e837c6a13663b6 gunicorn-registry stdout | 2025-09-26 08:37:07,323 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 1b66f14a63999c21fe25091f1011ad135ebfd54dbf92b1c8cc02b5c4154a0351 gunicorn-registry stdout | 2025-09-26 08:37:07,323 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,324 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:07,324 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:07,337 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/7a/7a444bc9f0713d2f048cd64e3458f7ef8d29683814fcb08a3e5c8fc3c4b41d36 HTTP/1.1" 200 241 gunicorn-registry stdout | 2025-09-26 08:37:07,337 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9665-854du2-10ih', 'x-amz-id-2': 'mg0l9665-854du2-10ih', 'ETag': '"c170324d07169ded9b90cce181613f90-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:36 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:07,337 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:07,337 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,338 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:07,338 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,338 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9665-854du2-10ih', 'HostId': 'mg0l9665-854du2-10ih', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9665-854du2-10ih', 'x-amz-id-2': 'mg0l9665-854du2-10ih', 'etag': '"c170324d07169ded9b90cce181613f90-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:36 GMT', 'content-type': 'application/octet-stream', 'content-length': '241', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 36, tzinfo=tzutc()), 'ContentLength': 241, 'ETag': '"c170324d07169ded9b90cce181613f90-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:07,339 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:bd4199eb785a74df05d995ccf017888413746b5566e0b401b93a173859f0827f', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,341 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [3, None, 1758876127340, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,341 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:a1c858aaff07c8da76e480d63c94e025c6317862dd2825c5ab2f4bf138a4c5dd', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,344 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,344 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['570164b8-53bc-42a4-b733-6ed2db166d26']) gunicorn-registry stdout | 2025-09-26 08:37:07,345 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:07,346 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:07,346 [257] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5'} gunicorn-registry stdout | 2025-09-26 08:37:07,346 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,346 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,346 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,346 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,346 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,346 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,346 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,346 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:07,346 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:07,346 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:07,346 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:07,346 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,346 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,346 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,347 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:07,347 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,347 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,347 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,347 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,347 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:07,347 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083707Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:07,347 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083707Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 9d971a40e66f3b946eed1bff170e4b49600325427863ddbf8af4f66f58644b56 gunicorn-registry stdout | 2025-09-26 08:37:07,347 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 4e8d042dbc9d13f388e7c8d8dff4f5d9ad44a84d3c5d1b7d0bec1ae854b09340 gunicorn-registry stdout | 2025-09-26 08:37:07,347 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,347 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:07,347 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:07,360 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/22/2283721971a18c443314dca49231fb058e4956cc1558113bbc3fc407ffa824b5 HTTP/1.1" 200 593 gunicorn-registry stdout | 2025-09-26 08:37:07,360 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l966t-8jdxbo-13pz', 'x-amz-id-2': 'mg0l966t-8jdxbo-13pz', 'ETag': '"fbce6db1c08805ef6b3a57204c111a92-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:38 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '593', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:07,360 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:07,361 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,361 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:07,361 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,361 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l966t-8jdxbo-13pz', 'HostId': 'mg0l966t-8jdxbo-13pz', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l966t-8jdxbo-13pz', 'x-amz-id-2': 'mg0l966t-8jdxbo-13pz', 'etag': '"fbce6db1c08805ef6b3a57204c111a92-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:38 GMT', 'content-type': 'application/octet-stream', 'content-length': '593', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 38, tzinfo=tzutc()), 'ContentLength': 593, 'ETag': '"fbce6db1c08805ef6b3a57204c111a92-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:07,363 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:a1c858aaff07c8da76e480d63c94e025c6317862dd2825c5ab2f4bf138a4c5dd', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,364 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [4, None, 1758876127363, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,365 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:1475ea648c2027063f90bc98072ee2197ceec56e17de472f7f9777b8944e9c38', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,367 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,368 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['5fa09ad8-4d79-43e5-afae-741bb0754a48']) gunicorn-registry stdout | 2025-09-26 08:37:07,368 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:07,369 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:07,369 [257] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9'} gunicorn-registry stdout | 2025-09-26 08:37:07,369 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,369 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,369 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,369 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,369 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,369 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,369 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,369 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:07,369 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:07,369 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:07,370 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:07,370 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,370 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,370 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,370 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:07,370 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,370 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,370 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,370 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,370 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:07,370 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083707Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:07,370 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083707Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | ffdb6a3bee689c6ebe5c73b3df8cb2de45f75fba85a8178bd1da82189e90b138 gunicorn-registry stdout | 2025-09-26 08:37:07,370 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | a83f6c8013a7146486ccb2c7239ff6d18109ba31c82e19db1395431084fb7956 gunicorn-registry stdout | 2025-09-26 08:37:07,370 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,370 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:07,371 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:07,383 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/54/54a440516c40bffd899eafa298d86b1b7319b62e4f732d8acb1e7c1b3e61a6f9 HTTP/1.1" 200 167 gunicorn-registry stdout | 2025-09-26 08:37:07,383 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l967g-8wzsfr-pso', 'x-amz-id-2': 'mg0l967g-8wzsfr-pso', 'ETag': '"a9818db4e7d1861b8e5bdda91b9febaf-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:41 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '167', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:07,383 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:07,384 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,384 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:07,384 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,384 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l967g-8wzsfr-pso', 'HostId': 'mg0l967g-8wzsfr-pso', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l967g-8wzsfr-pso', 'x-amz-id-2': 'mg0l967g-8wzsfr-pso', 'etag': '"a9818db4e7d1861b8e5bdda91b9febaf-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:41 GMT', 'content-type': 'application/octet-stream', 'content-length': '167', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 41, tzinfo=tzutc()), 'ContentLength': 167, 'ETag': '"a9818db4e7d1861b8e5bdda91b9febaf-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:07,386 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:1475ea648c2027063f90bc98072ee2197ceec56e17de472f7f9777b8944e9c38', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,387 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [5, None, 1758876127386, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,388 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:0b762e487f7a8eb308da049b9a1edfaef7345f847399c27899d49c10e9c325b9', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,389 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:1717b9d509321d1c04cfcc2c1c9653e1556e8b87e34a532d0f5c3bdbcf501577', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,390 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['fe50d501-0d40-4c71-b24e-6ee9001a30c2']) gunicorn-registry stdout | 2025-09-26 08:37:07,391 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:07,392 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:07,392 [257] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/17/1717b9d509321d1c04cfcc2c1c9653e1556e8b87e34a532d0f5c3bdbcf501577'} gunicorn-registry stdout | 2025-09-26 08:37:07,392 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,392 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,392 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,392 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,392 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,392 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,392 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,392 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:07,392 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:07,392 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:07,392 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:07,392 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,392 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,392 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,392 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/17/1717b9d509321d1c04cfcc2c1c9653e1556e8b87e34a532d0f5c3bdbcf501577', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/17/1717b9d509321d1c04cfcc2c1c9653e1556e8b87e34a532d0f5c3bdbcf501577', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/17/1717b9d509321d1c04cfcc2c1c9653e1556e8b87e34a532d0f5c3bdbcf501577', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/17/1717b9d509321d1c04cfcc2c1c9653e1556e8b87e34a532d0f5c3bdbcf501577'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:07,392 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,393 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,393 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,393 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,393 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:07,393 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/17/1717b9d509321d1c04cfcc2c1c9653e1556e8b87e34a532d0f5c3bdbcf501577 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083707Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:07,393 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083707Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 4be82d209eeb796a8a0837e8d30a36ebc863348e6687d325a36b12115a580d01 gunicorn-registry stdout | 2025-09-26 08:37:07,393 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | c8fb5c0df740ece8d1e9ce4e4dc2e1cf354a5df267c55606b9bad6bf060a7e00 gunicorn-registry stdout | 2025-09-26 08:37:07,393 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,393 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:07,394 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:07,407 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/17/1717b9d509321d1c04cfcc2c1c9653e1556e8b87e34a532d0f5c3bdbcf501577 HTTP/1.1" 200 593 gunicorn-registry stdout | 2025-09-26 08:37:07,407 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9683-9aqqfu-mpk', 'x-amz-id-2': 'mg0l9683-9aqqfu-mpk', 'ETag': '"b56804647948f534a29bd63db3e05be4-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:44 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '593', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:07,407 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:07,408 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,408 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:07,408 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,408 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9683-9aqqfu-mpk', 'HostId': 'mg0l9683-9aqqfu-mpk', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9683-9aqqfu-mpk', 'x-amz-id-2': 'mg0l9683-9aqqfu-mpk', 'etag': '"b56804647948f534a29bd63db3e05be4-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:44 GMT', 'content-type': 'application/octet-stream', 'content-length': '593', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 44, tzinfo=tzutc()), 'ContentLength': 593, 'ETag': '"b56804647948f534a29bd63db3e05be4-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:07,410 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:0b762e487f7a8eb308da049b9a1edfaef7345f847399c27899d49c10e9c325b9', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,410 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [6, None, 1758876127410, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,411 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:256ffbe4e66db68c5d3ecd54b64e5b341158a10659859a838647d1432ea6a30a', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,414 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,415 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['14468196-ae3a-4490-a631-eab752452e6a']) gunicorn-registry stdout | 2025-09-26 08:37:07,415 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:07,416 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:07,416 [257] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/48/48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07'} gunicorn-registry stdout | 2025-09-26 08:37:07,416 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,416 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,417 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,417 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,417 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,417 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,417 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,417 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:07,417 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:07,417 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:07,417 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:07,417 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,417 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,417 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,417 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/48/48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/48/48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/48/48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/48/48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:07,417 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,417 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,417 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,417 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,417 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:07,417 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/48/48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083707Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:07,418 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083707Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 1271597f21bbae5ba45213cadb348262cd3db26cf67a6bb7e81ba806bea95f47 gunicorn-registry stdout | 2025-09-26 08:37:07,418 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 5533e47272bd8d58f0f59663c5a34b056a232d7e5e9a6b1c3481c0b9f9f21974 gunicorn-registry stdout | 2025-09-26 08:37:07,418 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,418 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:07,418 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:07,432 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/48/48524b92080ff6c6e895f280246e59de8de80ee86754a5fd012d7cc6ff4f8e07 HTTP/1.1" 200 241 gunicorn-registry stdout | 2025-09-26 08:37:07,432 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l968r-9pdv0t-1b59', 'x-amz-id-2': 'mg0l968r-9pdv0t-1b59', 'ETag': '"3121b88a3c6c2de99e86fe4710f17176-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:45 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:07,432 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:07,432 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,432 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:07,432 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,432 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l968r-9pdv0t-1b59', 'HostId': 'mg0l968r-9pdv0t-1b59', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l968r-9pdv0t-1b59', 'x-amz-id-2': 'mg0l968r-9pdv0t-1b59', 'etag': '"3121b88a3c6c2de99e86fe4710f17176-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:45 GMT', 'content-type': 'application/octet-stream', 'content-length': '241', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 45, tzinfo=tzutc()), 'ContentLength': 241, 'ETag': '"3121b88a3c6c2de99e86fe4710f17176-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:07,434 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:256ffbe4e66db68c5d3ecd54b64e5b341158a10659859a838647d1432ea6a30a', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,435 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [7, None, 1758876127435, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,436 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:008448246686fe28544e36ba89e7bc7fbe6dad8a2ccdef576875c74298c46348', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,438 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:2abc5e83407155714f171c293f197e1310176959e106f8ad63ffa2e7e9635d4a', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,439 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['b127f3b2-f235-4bed-9538-a7fb3de0c3a9']) gunicorn-registry stdout | 2025-09-26 08:37:07,440 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:07,440 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:07,441 [257] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/2a/2abc5e83407155714f171c293f197e1310176959e106f8ad63ffa2e7e9635d4a'} gunicorn-registry stdout | 2025-09-26 08:37:07,441 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,441 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,441 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,441 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,441 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,441 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,441 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,441 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:07,441 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:07,441 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:07,441 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:07,441 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,441 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,441 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,441 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/2a/2abc5e83407155714f171c293f197e1310176959e106f8ad63ffa2e7e9635d4a', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/2a/2abc5e83407155714f171c293f197e1310176959e106f8ad63ffa2e7e9635d4a', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/2a/2abc5e83407155714f171c293f197e1310176959e106f8ad63ffa2e7e9635d4a', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/2a/2abc5e83407155714f171c293f197e1310176959e106f8ad63ffa2e7e9635d4a'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:07,441 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,441 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,441 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,441 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,442 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:07,442 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/2a/2abc5e83407155714f171c293f197e1310176959e106f8ad63ffa2e7e9635d4a gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083707Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:07,442 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083707Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 8ef7be6e75cbe1def6668fefc39a5e2f1f411506a8f2afa34da4df8372022b09 gunicorn-registry stdout | 2025-09-26 08:37:07,442 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | abef6e38988838937d2e06c9cd5b629c1bc68d74bd1cf38f84a49cfbf59fe078 gunicorn-registry stdout | 2025-09-26 08:37:07,442 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,442 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:07,442 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:07,455 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/2a/2abc5e83407155714f171c293f197e1310176959e106f8ad63ffa2e7e9635d4a HTTP/1.1" 200 597 gunicorn-registry stdout | 2025-09-26 08:37:07,455 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l969f-a3ihlp-fcm', 'x-amz-id-2': 'mg0l969f-a3ihlp-fcm', 'ETag': '"aa8f171de98f25e9144e08ebfa6bca6d-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:48 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '597', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:07,455 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:07,456 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,456 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:07,456 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,456 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l969f-a3ihlp-fcm', 'HostId': 'mg0l969f-a3ihlp-fcm', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l969f-a3ihlp-fcm', 'x-amz-id-2': 'mg0l969f-a3ihlp-fcm', 'etag': '"aa8f171de98f25e9144e08ebfa6bca6d-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:48 GMT', 'content-type': 'application/octet-stream', 'content-length': '597', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 48, tzinfo=tzutc()), 'ContentLength': 597, 'ETag': '"aa8f171de98f25e9144e08ebfa6bca6d-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:07,458 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:008448246686fe28544e36ba89e7bc7fbe6dad8a2ccdef576875c74298c46348', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,458 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [8, None, 1758876127458, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,459 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:c2f35176d51645644dac998abfd7357827f01ca6d7a66b9c846178ddec8e3b80', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,461 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,462 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['28c17e26-fd25-43bc-b5e3-0eb584c45bc7']) gunicorn-registry stdout | 2025-09-26 08:37:07,463 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:07,463 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:07,463 [257] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283'} gunicorn-registry stdout | 2025-09-26 08:37:07,463 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,463 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,463 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,463 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,463 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,463 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,464 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,464 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:07,464 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:07,464 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:07,464 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:07,464 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,464 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,464 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,464 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:07,464 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,464 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,464 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,464 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,464 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:07,464 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083707Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:07,464 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083707Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | ec44acffb502ff8179860d17b7abfa904ab900c3d7043acee3ace8cacaa38193 gunicorn-registry stdout | 2025-09-26 08:37:07,464 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | c9e39e105b8f163357fc76a2945c1cc42eb78899a4fa9cd3a9809e6d8ab9b52d gunicorn-registry stdout | 2025-09-26 08:37:07,464 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,465 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:07,465 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:07,478 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5c/5c40dfa7b532e721f94b2701115434a034c5cece1152b87330140e4788b29283 HTTP/1.1" 200 241 gunicorn-registry stdout | 2025-09-26 08:37:07,478 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96a2-ahf4o3-3xd', 'x-amz-id-2': 'mg0l96a2-ahf4o3-3xd', 'ETag': '"ff5f07fe308df34f73245cf8878c3b21-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:49 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:07,478 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:07,478 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,478 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:07,478 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,478 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l96a2-ahf4o3-3xd', 'HostId': 'mg0l96a2-ahf4o3-3xd', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96a2-ahf4o3-3xd', 'x-amz-id-2': 'mg0l96a2-ahf4o3-3xd', 'etag': '"ff5f07fe308df34f73245cf8878c3b21-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:49 GMT', 'content-type': 'application/octet-stream', 'content-length': '241', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 49, tzinfo=tzutc()), 'ContentLength': 241, 'ETag': '"ff5f07fe308df34f73245cf8878c3b21-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:07,481 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:c2f35176d51645644dac998abfd7357827f01ca6d7a66b9c846178ddec8e3b80', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,481 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [9, None, 1758876127481, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,482 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:af11d8e82a84ada96b5af358e796120e1c83f685d077b25ec05af8e6bc8827b6', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,485 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,485 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['1848f78c-1376-4017-bdff-fd937230ce74']) gunicorn-registry stdout | 2025-09-26 08:37:07,486 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:07,488 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:07,488 [257] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c'} gunicorn-registry stdout | 2025-09-26 08:37:07,488 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,488 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,488 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,488 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,488 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,488 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,488 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,488 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:07,489 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:07,489 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:07,489 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:07,489 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,489 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,489 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,489 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:07,489 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,489 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,489 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,489 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,489 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:07,489 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083707Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:07,489 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083707Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | b3c3ab68146d580c8c33629475295a52d91af26e2aa4d473006c1bf35e0594c0 gunicorn-registry stdout | 2025-09-26 08:37:07,489 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 9ec76755f3ed2444d4e22a5389674d417e493803d5bbe0e424857bbfa86b01cc gunicorn-registry stdout | 2025-09-26 08:37:07,490 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,490 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:07,490 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:07,503 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/95/957b6b57f4173ba3ebfc2b2582d0ad72d325265f0ac7c1fe20356c855c4a955c HTTP/1.1" 200 576 gunicorn-registry stdout | 2025-09-26 08:37:07,503 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96ar-aw0ak2-tx9', 'x-amz-id-2': 'mg0l96ar-aw0ak2-tx9', 'ETag': '"ad3471c562bc7fd7ea9b64d2c5eaf89d-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:51 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '576', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:07,503 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:07,503 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,503 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:07,503 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,503 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l96ar-aw0ak2-tx9', 'HostId': 'mg0l96ar-aw0ak2-tx9', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96ar-aw0ak2-tx9', 'x-amz-id-2': 'mg0l96ar-aw0ak2-tx9', 'etag': '"ad3471c562bc7fd7ea9b64d2c5eaf89d-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:51 GMT', 'content-type': 'application/octet-stream', 'content-length': '576', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 51, tzinfo=tzutc()), 'ContentLength': 576, 'ETag': '"ad3471c562bc7fd7ea9b64d2c5eaf89d-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:07,505 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:af11d8e82a84ada96b5af358e796120e1c83f685d077b25ec05af8e6bc8827b6', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,506 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [10, None, 1758876127506, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,507 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:c14851cd48d13b30981b7513c11e72f2cd7a90217efbce4d48233b5cfe23182f', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,509 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,510 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['32b931e7-3228-4baf-a680-adbd7c5f93c2']) gunicorn-registry stdout | 2025-09-26 08:37:07,511 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:07,512 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:07,513 [257] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/76/761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095'} gunicorn-registry stdout | 2025-09-26 08:37:07,513 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,513 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,513 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,513 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,513 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,513 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,513 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,513 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:07,513 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:07,513 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:07,513 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:07,513 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,513 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,513 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,513 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/76/761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/76/761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/76/761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/76/761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:07,513 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,513 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,513 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,514 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,514 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:07,514 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/76/761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083707Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:07,514 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083707Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 87197371f13c3afd3dd0789726389f16758fa6fb700536c589a74e10b9b912b1 gunicorn-registry stdout | 2025-09-26 08:37:07,514 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 1fa895be66465aa7bc2127649938a42a11c9f4effc19f3aa0bd2ed1490d7478b gunicorn-registry stdout | 2025-09-26 08:37:07,514 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,514 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:07,514 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:07,527 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/76/761452f61cc7faecf79a125b3ce0ea53f36fc7dd97a263963e2659f25fe4a095 HTTP/1.1" 200 241 gunicorn-registry stdout | 2025-09-26 08:37:07,527 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96bf-baksqp-m8r', 'x-amz-id-2': 'mg0l96bf-baksqp-m8r', 'ETag': '"61a75d0e757232a88592a29f55d878e0-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:54 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:07,527 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:07,528 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,528 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:07,528 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,528 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l96bf-baksqp-m8r', 'HostId': 'mg0l96bf-baksqp-m8r', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96bf-baksqp-m8r', 'x-amz-id-2': 'mg0l96bf-baksqp-m8r', 'etag': '"61a75d0e757232a88592a29f55d878e0-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:54 GMT', 'content-type': 'application/octet-stream', 'content-length': '241', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 54, tzinfo=tzutc()), 'ContentLength': 241, 'ETag': '"61a75d0e757232a88592a29f55d878e0-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:07,530 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:c14851cd48d13b30981b7513c11e72f2cd7a90217efbce4d48233b5cfe23182f', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,531 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [11, None, 1758876127530, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,532 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:b058f50906dff72a20c83582eddad899cd501b7e4a0caca511cfdad19a129c30', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,533 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:cc40df68500fd27710307003a860cca71de4502bd43c23940216d572e121b1ee', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,534 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['ae87bbff-c1ad-434d-84aa-28ff0e2a2281']) gunicorn-registry stdout | 2025-09-26 08:37:07,535 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:07,536 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:07,536 [257] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/cc/cc40df68500fd27710307003a860cca71de4502bd43c23940216d572e121b1ee'} gunicorn-registry stdout | 2025-09-26 08:37:07,536 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,536 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,536 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,536 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,536 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,536 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,536 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,536 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:07,536 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:07,536 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:07,537 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:07,537 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,537 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,537 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,537 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/cc/cc40df68500fd27710307003a860cca71de4502bd43c23940216d572e121b1ee', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cc/cc40df68500fd27710307003a860cca71de4502bd43c23940216d572e121b1ee', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cc/cc40df68500fd27710307003a860cca71de4502bd43c23940216d572e121b1ee', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/cc/cc40df68500fd27710307003a860cca71de4502bd43c23940216d572e121b1ee'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:07,537 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,538 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,538 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,538 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,538 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:07,538 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cc/cc40df68500fd27710307003a860cca71de4502bd43c23940216d572e121b1ee gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083707Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:07,538 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083707Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 01d9da2acd9affd25e19d027f740204244c719c7ec23e673d2d51e7c6482d210 gunicorn-registry stdout | 2025-09-26 08:37:07,538 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | c39dcbeacc58e9bf5726711133eb3c69a25c747d41a098f369e7682a2b4667e3 gunicorn-registry stdout | 2025-09-26 08:37:07,538 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,538 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:07,538 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:07,550 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cc/cc40df68500fd27710307003a860cca71de4502bd43c23940216d572e121b1ee HTTP/1.1" 200 584 gunicorn-registry stdout | 2025-09-26 08:37:07,550 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96c4-bp1z5y-m8l', 'x-amz-id-2': 'mg0l96c4-bp1z5y-m8l', 'ETag': '"753b145ff6db4e3b358fe0e389c37737-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:56 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '584', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:07,550 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:07,551 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,551 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:07,551 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,551 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l96c4-bp1z5y-m8l', 'HostId': 'mg0l96c4-bp1z5y-m8l', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96c4-bp1z5y-m8l', 'x-amz-id-2': 'mg0l96c4-bp1z5y-m8l', 'etag': '"753b145ff6db4e3b358fe0e389c37737-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:56 GMT', 'content-type': 'application/octet-stream', 'content-length': '584', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 56, tzinfo=tzutc()), 'ContentLength': 584, 'ETag': '"753b145ff6db4e3b358fe0e389c37737-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:07,553 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:b058f50906dff72a20c83582eddad899cd501b7e4a0caca511cfdad19a129c30', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,554 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [12, None, 1758876127554, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,555 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:cb1862fbe7951d7e19bf6012f18368a99531938db355638492374c14c50cd50d', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,557 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,557 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['42a7e295-1848-4237-a4e3-c28b60bf18b0']) gunicorn-registry stdout | 2025-09-26 08:37:07,558 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:07,559 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:07,559 [257] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e'} gunicorn-registry stdout | 2025-09-26 08:37:07,559 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,559 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,559 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,559 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,559 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,559 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,560 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,560 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:07,560 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:07,560 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:07,560 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:07,560 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,560 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,560 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,560 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:07,560 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,560 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,560 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,560 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,560 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:07,560 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083707Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:07,560 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083707Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 4bdf1de3851388b55e6818b2746fb19a65ce89e765f4b73769471b6cfe49a813 gunicorn-registry stdout | 2025-09-26 08:37:07,561 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 36aa5b3027bed5b76c54618eb2d7bcea7e349e9eaf52f9045afc7c061b4e2928 gunicorn-registry stdout | 2025-09-26 08:37:07,561 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,561 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:07,561 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:07,573 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e HTTP/1.1" 200 241 gunicorn-registry stdout | 2025-09-26 08:37:07,573 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96cq-c2a1im-190w', 'x-amz-id-2': 'mg0l96cq-c2a1im-190w', 'ETag': '"517b0a2657a6f159dbb0c68ae54f1307-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:58 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:07,573 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:07,574 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,574 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:07,574 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,574 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l96cq-c2a1im-190w', 'HostId': 'mg0l96cq-c2a1im-190w', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96cq-c2a1im-190w', 'x-amz-id-2': 'mg0l96cq-c2a1im-190w', 'etag': '"517b0a2657a6f159dbb0c68ae54f1307-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:58 GMT', 'content-type': 'application/octet-stream', 'content-length': '241', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 58, tzinfo=tzutc()), 'ContentLength': 241, 'ETag': '"517b0a2657a6f159dbb0c68ae54f1307-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:07,576 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:cb1862fbe7951d7e19bf6012f18368a99531938db355638492374c14c50cd50d', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,577 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [13, None, 1758876127577, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,578 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:d17c97e1ccf6490cb90fa17f6f021e404401d2656928631c73fd75ee711d87bd', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,580 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,582 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['ed59a6c3-28ec-4b97-b5f1-b79c436780b9']) gunicorn-registry stdout | 2025-09-26 08:37:07,583 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:07,584 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:07,584 [257] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2'} gunicorn-registry stdout | 2025-09-26 08:37:07,584 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,584 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,584 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,584 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,584 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,584 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,584 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,584 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:07,584 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:07,584 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:07,584 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:07,585 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,585 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,585 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,585 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:07,585 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,585 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,585 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,585 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,585 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:07,585 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083707Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:07,585 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083707Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 8b6c9e169eed00db980531a1e33385370015997431bece4276439b618300797e gunicorn-registry stdout | 2025-09-26 08:37:07,585 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | d1f4a1b2a6203482ec1f1f9eb1ab757b85be6e8eb6e0e0bfb45028d698e78252 gunicorn-registry stdout | 2025-09-26 08:37:07,585 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,585 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:07,586 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:07,597 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2 HTTP/1.1" 200 584 gunicorn-registry stdout | 2025-09-26 08:37:07,597 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96df-cgzzrw-18kd', 'x-amz-id-2': 'mg0l96df-cgzzrw-18kd', 'ETag': '"d79d1533d445974a6fac572ac13d1f99-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:00 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '584', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:07,597 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:07,598 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,598 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:07,598 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,598 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l96df-cgzzrw-18kd', 'HostId': 'mg0l96df-cgzzrw-18kd', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96df-cgzzrw-18kd', 'x-amz-id-2': 'mg0l96df-cgzzrw-18kd', 'etag': '"d79d1533d445974a6fac572ac13d1f99-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:00 GMT', 'content-type': 'application/octet-stream', 'content-length': '584', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, tzinfo=tzutc()), 'ContentLength': 584, 'ETag': '"d79d1533d445974a6fac572ac13d1f99-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:07,600 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:d17c97e1ccf6490cb90fa17f6f021e404401d2656928631c73fd75ee711d87bd', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,600 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [14, None, 1758876127600, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,602 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:6c177c7cb8fd7f03ea99c3fa679e1160487ad19131b174fbdbd5658f222e53ef', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,605 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:c26023b0d841656913ab6cac3f47943f150dd7e9a307d1300fda95eb157c962d', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,607 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['379a12ca-bb57-4df0-a868-be3e0a060579']) gunicorn-registry stdout | 2025-09-26 08:37:07,607 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:07,608 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:07,608 [257] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/c2/c26023b0d841656913ab6cac3f47943f150dd7e9a307d1300fda95eb157c962d'} gunicorn-registry stdout | 2025-09-26 08:37:07,609 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,609 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,609 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,609 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,609 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,609 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,609 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,609 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:07,609 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:07,609 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:07,609 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:07,609 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,609 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,609 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,609 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/c2/c26023b0d841656913ab6cac3f47943f150dd7e9a307d1300fda95eb157c962d', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c2/c26023b0d841656913ab6cac3f47943f150dd7e9a307d1300fda95eb157c962d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c2/c26023b0d841656913ab6cac3f47943f150dd7e9a307d1300fda95eb157c962d', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/c2/c26023b0d841656913ab6cac3f47943f150dd7e9a307d1300fda95eb157c962d'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:07,610 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,610 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,610 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,610 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,610 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:07,610 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c2/c26023b0d841656913ab6cac3f47943f150dd7e9a307d1300fda95eb157c962d gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083707Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:07,610 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083707Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 62031ad2027c9dc66378a1f733819e7fcdb4c99756894a0bc5020299cbbefab8 gunicorn-registry stdout | 2025-09-26 08:37:07,611 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 70cfed0058d0b434fd937d0f29ab4a46fa12f0199687ece530e153b5a6041ba0 gunicorn-registry stdout | 2025-09-26 08:37:07,611 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,611 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:07,611 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:07,624 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c2/c26023b0d841656913ab6cac3f47943f150dd7e9a307d1300fda95eb157c962d HTTP/1.1" 200 241 gunicorn-registry stdout | 2025-09-26 08:37:07,624 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96e4-cw9wbo-fq0', 'x-amz-id-2': 'mg0l96e4-cw9wbo-fq0', 'ETag': '"84640d82a0cfebe3cecb2a047dce8a32-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:02 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:07,624 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:07,624 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,624 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:07,624 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,624 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l96e4-cw9wbo-fq0', 'HostId': 'mg0l96e4-cw9wbo-fq0', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96e4-cw9wbo-fq0', 'x-amz-id-2': 'mg0l96e4-cw9wbo-fq0', 'etag': '"84640d82a0cfebe3cecb2a047dce8a32-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:02 GMT', 'content-type': 'application/octet-stream', 'content-length': '241', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 2, tzinfo=tzutc()), 'ContentLength': 241, 'ETag': '"84640d82a0cfebe3cecb2a047dce8a32-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:07,626 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:6c177c7cb8fd7f03ea99c3fa679e1160487ad19131b174fbdbd5658f222e53ef', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,627 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [15, None, 1758876127626, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,628 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:4b2235713e64d414107b901ceb31c8f53c55b66346170aad3feed8a916a7a5b9', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,630 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,631 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['a4d27724-286e-4842-be05-e33cb13571b7']) gunicorn-registry stdout | 2025-09-26 08:37:07,632 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:07,632 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:07,633 [257] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655'} gunicorn-registry stdout | 2025-09-26 08:37:07,633 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,633 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,633 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,633 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,633 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,633 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,633 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,633 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:07,633 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:07,633 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:07,633 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:07,633 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,633 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,633 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,633 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:07,633 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,633 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,633 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,633 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,634 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:07,634 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083707Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:07,634 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083707Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 61a66921c936d2c31ba22a76437e08dcbd78fdb35fb5aa6db720bdc23891068c gunicorn-registry stdout | 2025-09-26 08:37:07,634 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | fa258254a9d437944b38b4dea5cd46c2d7e1422ae87be72ff0c358857c56218b gunicorn-registry stdout | 2025-09-26 08:37:07,634 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,634 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:07,634 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:07,647 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655 HTTP/1.1" 200 580 gunicorn-registry stdout | 2025-09-26 08:37:07,647 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96er-d9uwu2-124q', 'x-amz-id-2': 'mg0l96er-d9uwu2-124q', 'ETag': '"7478be6b88f1ffd40bbbd0969bfa45ef-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:05 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '580', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:07,647 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:07,647 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,647 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:07,647 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,647 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l96er-d9uwu2-124q', 'HostId': 'mg0l96er-d9uwu2-124q', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96er-d9uwu2-124q', 'x-amz-id-2': 'mg0l96er-d9uwu2-124q', 'etag': '"7478be6b88f1ffd40bbbd0969bfa45ef-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:05 GMT', 'content-type': 'application/octet-stream', 'content-length': '580', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 5, tzinfo=tzutc()), 'ContentLength': 580, 'ETag': '"7478be6b88f1ffd40bbbd0969bfa45ef-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:07,649 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:4b2235713e64d414107b901ceb31c8f53c55b66346170aad3feed8a916a7a5b9', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,650 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [16, None, 1758876127650, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,651 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:b10cbe44bc0377ff7e0942c2e9ed9a655d050e577ac4bc8852b7868cc304f098', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,653 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,653 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['d7873bc6-4118-430a-b483-9f08d2b41d65']) gunicorn-registry stdout | 2025-09-26 08:37:07,655 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:07,655 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:07,655 [257] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31'} gunicorn-registry stdout | 2025-09-26 08:37:07,655 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083707Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:07,656 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083707Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | c24dd7f770d1a51abd69dd963ce4c91f974e82ceb099a38989f62fbfc07c4e34 gunicorn-registry stdout | 2025-09-26 08:37:07,657 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 17e8217dd99e129ea882800690073816f11280ea6679cc27097627cf942fe7d1 gunicorn-registry stdout | 2025-09-26 08:37:07,657 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,657 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:07,657 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:07,669 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31 HTTP/1.1" 200 241 gunicorn-registry stdout | 2025-09-26 08:37:07,669 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96fe-dngr1x-190r', 'x-amz-id-2': 'mg0l96fe-dngr1x-190r', 'ETag': '"53322718ebdc1748c36dd9ac59b3279e-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:07,669 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:07,670 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:07,670 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:07,670 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:07,670 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l96fe-dngr1x-190r', 'HostId': 'mg0l96fe-dngr1x-190r', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96fe-dngr1x-190r', 'x-amz-id-2': 'mg0l96fe-dngr1x-190r', 'etag': '"53322718ebdc1748c36dd9ac59b3279e-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:07 GMT', 'content-type': 'application/octet-stream', 'content-length': '241', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 7, tzinfo=tzutc()), 'ContentLength': 241, 'ETag': '"53322718ebdc1748c36dd9ac59b3279e-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:07,672 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:b10cbe44bc0377ff7e0942c2e9ed9a655d050e577ac4bc8852b7868cc304f098', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,673 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [17, None, 1758876127672, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,674 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."digest" = %s) AND ("t1"."repository_id" = %s)) LIMIT %s OFFSET %s', ['sha256:8a1f59ffb675680d47db6337b49d22281a139e9d709335b492be023728e11715', 2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,676 [257] [DEBUG] [peewee] ('INSERT INTO "manifest" ("repository_id", "digest", "media_type_id", "manifest_bytes", "config_media_type", "layers_compressed_size", "subject", "subject_backfilled", "artifact_type", "artifact_type_backfilled") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifest"."id"', [2, 'sha256:8a1f59ffb675680d47db6337b49d22281a139e9d709335b492be023728e11715', 17, '{"manifests":[{"annotations":{"com.docker.official-images.bashbrew.arch":"amd64","org.opencontainers.image.base.name":"scratch","org.opencontainers.image.created":"2025-05-30T18:04:04Z","org.opencontainers.image.revision":"5213c5a71c73d39d5896657909e753effb1c05ff","org.opencontainers.image.source":"https:\\/\\/github.com\\/alpinelinux\\/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:x86_64","org.opencontainers.image.url":"https:\\/\\/hub.docker.com\\/_\\/alpine","org.opencontainers.image.version":"3.22.0"},"digest":"sha256:08001109a7d679fe33b04fa51d681bd40b975d8f5cea8c3ef6c0eccb6a7338ce","mediaType":"application\\/vnd.oci.image.manifest.v1+json","platform":{"architecture":"amd64","os":"linux"},"size":1022},{"annotations":{"com.docker.official-images.bashbrew.arch":"amd64","vnd.docker.reference.digest":"sha256:08001109a7d679fe33b04fa51d681bd40b975d8f5cea8c3ef6c0eccb6a7338ce","vnd.docker.reference.type":"attestation-manifest"},"digest":"sha256:bd4199eb785a74df05d995ccf017888413746b5566e0b401b93a173859f0827f","mediaType":"application\\/vnd.oci.image.manifest.v1+json","platform":{"architecture":"unknown","os":"unknown"},"size":838},{"annotations":{"com.docker.official-images.bashbrew.arch":"arm32v6","org.opencontainers.image.base.name":"scratch","org.opencontainers.image.created":"2025-05-30T18:04:23Z","org.opencontainers.image.revision":"5213c5a71c73d39d5896657909e753effb1c05ff","org.opencontainers.image.source":"https:\\/\\/github.com\\/alpinelinux\\/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:armhf","org.opencontainers.image.url":"https:\\/\\/hub.docker.com\\/_\\/alpine","org.opencontainers.image.version":"3.22.0"},"digest":"sha256:a1c858aaff07c8da76e480d63c94e025c6317862dd2825c5ab2f4bf138a4c5dd","mediaType":"application\\/vnd.oci.image.manifest.v1+json","platform":{"architecture":"arm","os":"linux","variant":"v6"},"size":1023},{"annotations":{"com.docker.official-images.bashbrew.arch":"arm32v6","vnd.docker.reference.digest":"sha256:a1c858aaff07c8da76e480d63c94e025c6317862dd2825c5ab2f4bf138a4c5dd","vnd.docker.reference.type":"attestation-manifest"},"digest":"sha256:1475ea648c2027063f90bc98072ee2197ceec56e17de472f7f9777b8944e9c38","mediaType":"application\\/vnd.oci.image.manifest.v1+json","platform":{"architecture":"unknown","os":"unknown"},"size":566},{"annotations":{"com.docker.official-images.bashbrew.arch":"arm32v7","org.opencontainers.image.base.name":"scratch","org.opencontainers.image.created":"2025-05-30T18:14:13Z","org.opencontainers.image.revision":"5213c5a71c73d39d5896657909e753effb1c05ff","org.opencontainers.image.source":"https:\\/\\/github.com\\/alpinelinux\\/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:armv7","org.opencontainers.image.url":"https:\\/\\/hub.docker.com\\/_\\/alpine","org.opencontainers.image.version":"3.22.0"},"digest":"sha256:0b762e487f7a8eb308da049b9a1edfaef7345f847399c27899d49c10e9c325b9","mediaType":"application\\/vnd.oci.image.manifest.v1+json","platform":{"architecture":"arm","os":"linux","variant":"v7"},"size":1023},{"annotations":{"com.docker.official-images.bashbrew.arch":"arm32v7","vnd.docker.reference.digest":"sha256:0b762e487f7a8eb308da049b9a1edfaef7345f847399c27899d49c10e9c325b9","vnd.docker.reference.type":"attestation-manifest"},"digest":"sha256:256ffbe4e66db68c5d3ecd54b64e5b341158a10659859a838647d1432ea6a30a","mediaType":"application\\/vnd.oci.image.manifest.v1+json","platform":{"architecture":"unknown","os":"unknown"},"size":838},{"annotations":{"com.docker.official-images.bashbrew.arch":"arm64v8","org.opencontainers.image.base.name":"scratch","org.opencontainers.image.created":"2025-05-30T18:15:12Z","org.opencontainers.image.revision":"5213c5a71c73d39d5896657909e753effb1c05ff","org.opencontainers.image.source":"https:\\/\\/github.com\\/alpinelinux\\/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:aarch64","org.opencontainers.image.url":"https:\\/\\/hub.docker.com\\/_\\/alpine","org.opencontainers.image.version":"3.22.0"},"digest":"sha256:008448246686fe28544e36ba89e7bc7fbe6dad8a2ccdef576875c74298c46348","mediaType":"application\\/vnd.oci.image.manifest.v1+json","platform":{"architecture":"arm64","os":"linux","variant":"v8"},"size":1025},{"annotations":{"com.docker.official-images.bashbrew.arch":"arm64v8","vnd.docker.reference.digest":"sha256:008448246686fe28544e36ba89e7bc7fbe6dad8a2ccdef576875c74298c46348","vnd.docker.reference.type":"attestation-manifest"},"digest":"sha256:c2f35176d51645644dac998abfd7357827f01ca6d7a66b9c846178ddec8e3b80","mediaType":"application\\/vnd.oci.image.manifest.v1+json","platform":{"architecture":"unknown","os":"unknown"},"size":838},{"annotations":{"com.docker.official-images.bashbrew.arch":"i386","org.opencontainers.image.base.name":"scratch","org.opencontainers.image.created":"2025-05-30T18:04:05Z","org.opencontainers.image.revision":"5213c5a71c73d39d5896657909e753effb1c05ff","org.opencontainers.image.source":"https:\\/\\/github.com\\/alpinelinux\\/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:x86","org.opencontainers.image.url":"https:\\/\\/hub.docker.com\\/_\\/alpine","org.opencontainers.image.version":"3.22.0"},"digest":"sha256:af11d8e82a84ada96b5af358e796120e1c83f685d077b25ec05af8e6bc8827b6","mediaType":"application\\/vnd.oci.image.manifest.v1+json","platform":{"architecture":"386","os":"linux"},"size":1018},{"annotations":{"com.docker.official-images.bashbrew.arch":"i386","vnd.docker.reference.digest":"sha256:af11d8e82a84ada96b5af358e796120e1c83f685d077b25ec05af8e6bc8827b6","vnd.docker.reference.type":"attestation-manifest"},"digest":"sha256:c14851cd48d13b30981b7513c11e72f2cd7a90217efbce4d48233b5cfe23182f","mediaType":"application\\/vnd.oci.image.manifest.v1+json","platform":{"architecture":"unknown","os":"unknown"},"size":838},{"annotations":{"com.docker.official-images.bashbrew.arch":"ppc64le","org.opencontainers.image.base.name":"scratch","org.opencontainers.image.created":"2025-05-30T18:14:08Z","org.opencontainers.image.revision":"5213c5a71c73d39d5896657909e753effb1c05ff","org.opencontainers.image.source":"https:\\/\\/github.com\\/alpinelinux\\/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:ppc64le","org.opencontainers.image.url":"https:\\/\\/hub.docker.com\\/_\\/alpine","org.opencontainers.image.version":"3.22.0"},"digest":"sha256:b058f50906dff72a20c83582eddad899cd501b7e4a0caca511cfdad19a129c30","mediaType":"application\\/vnd.oci.image.manifest.v1+json","platform":{"architecture":"ppc64le","os":"linux"},"size":1025},{"annotations":{"com.docker.official-images.bashbrew.arch":"ppc64le","vnd.docker.reference.digest":"sha256:b058f50906dff72a20c83582eddad899cd501b7e4a0caca511cfdad19a129c30","vnd.docker.reference.type":"attestation-manifest"},"digest":"sha256:cb1862fbe7951d7e19bf6012f18368a99531938db355638492374c14c50cd50d","mediaType":"application\\/vnd.oci.image.manifest.v1+json","platform":{"architecture":"unknown","os":"unknown"},"size":838},{"annotations":{"com.docker.official-images.bashbrew.arch":"riscv64","org.opencontainers.image.base.name":"scratch","org.opencontainers.image.created":"2025-05-30T18:53:56Z","org.opencontainers.image.revision":"5213c5a71c73d39d5896657909e753effb1c05ff","org.opencontainers.image.source":"https:\\/\\/github.com\\/alpinelinux\\/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:riscv64","org.opencontainers.image.url":"https:\\/\\/hub.docker.com\\/_\\/alpine","org.opencontainers.image.version":"3.22.0"},"digest":"sha256:d17c97e1ccf6490cb90fa17f6f021e404401d2656928631c73fd75ee711d87bd","mediaType":"application\\/vnd.oci.image.manifest.v1+json","platform":{"architecture":"riscv64","os":"linux"},"size":1025},{"annotations":{"com.docker.official-images.bashbrew.arch":"riscv64","vnd.docker.reference.digest":"sha256:d17c97e1ccf6490cb90fa17f6f021e404401d2656928631c73fd75ee711d87bd","vnd.docker.reference.type":"attestation-manifest"},"digest":"sha256:6c177c7cb8fd7f03ea99c3fa679e1160487ad19131b174fbdbd5658f222e53ef","mediaType":"application\\/vnd.oci.image.manifest.v1+json","platform":{"architecture":"unknown","os":"unknown"},"size":838},{"annotations":{"com.docker.official-images.bashbrew.arch":"s390x","org.opencontainers.image.base.name":"scratch","org.opencontainers.image.created":"2025-05-30T18:13:01Z","org.opencontainers.image.revision":"5213c5a71c73d39d5896657909e753effb1c05ff","org.opencontainers.image.source":"https:\\/\\/github.com\\/alpinelinux\\/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:s390x","org.opencontainers.image.url":"https:\\/\\/hub.docker.com\\/_\\/alpine","org.opencontainers.image.version":"3.22.0"},"digest":"sha256:4b2235713e64d414107b901ceb31c8f53c55b66346170aad3feed8a916a7a5b9","mediaType":"application\\/vnd.oci.image.manifest.v1+json","platform":{"architecture":"s390x","os":"linux"},"size":1021},{"annotations":{"com.docker.official-images.bashbrew.arch":"s390x","vnd.docker.reference.digest":"sha256:4b2235713e64d414107b901ceb31c8f53c55b66346170aad3feed8a916a7a5b9","vnd.docker.reference.type":"attestation-manifest"},"digest":"sha256:b10cbe44bc0377ff7e0942c2e9ed9a655d050e577ac4bc8852b7868cc304f098","mediaType":"application\\/vnd.oci.image.manifest.v1+json","platform":{"architecture":"unknown","os":"unknown"},"size":838}],"mediaType":"application\\/vnd.oci.image.index.v1+json","schemaVersion":2}', None, None, None, True, None, True]) gunicorn-registry stdout | 2025-09-26 08:37:07,677 [257] [DEBUG] [data.model.quota] no blobs found for manifest 18 in repository 2, skipping calculation gunicorn-registry stdout | 2025-09-26 08:37:07,677 [257] [DEBUG] [peewee] ('INSERT INTO "manifestchild" ("repository_id", "manifest_id", "child_manifest_id") VALUES (%s, %s, %s), (%s, %s, %s), (%s, %s, %s), (%s, %s, %s), (%s, %s, %s), (%s, %s, %s), (%s, %s, %s), (%s, %s, %s), (%s, %s, %s), (%s, %s, %s), (%s, %s, %s), (%s, %s, %s), (%s, %s, %s), (%s, %s, %s), (%s, %s, %s), (%s, %s, %s) RETURNING "manifestchild"."id"', [2, 18, 2, 2, 18, 3, 2, 18, 4, 2, 18, 5, 2, 18, 6, 2, 18, 7, 2, 18, 8, 2, 18, 9, 2, 18, 10, 2, 18, 11, 2, 18, 12, 2, 18, 13, 2, 18, 14, 2, 18, 15, 2, 18, 16, 2, 18, 17]) gunicorn-registry stdout | 2025-09-26 08:37:07,681 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,683 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:37:07,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:37:07,684 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:11.684816+00:00 (in 4.000828 seconds) gunicorn-registry stdout | 2025-09-26 08:37:07,684 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg', False, 1, 0]) securityworker stdout | 2025-09-26 08:37:07,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:37 GMT)" (scheduled at 2025-09-26 08:37:07.683505+00:00) gunicorn-registry stdout | 2025-09-26 08:37:07,685 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg']) securityworker stdout | 2025-09-26 08:37:07,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:37:07,685 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state gunicorn-registry stdout | 2025-09-26 08:37:07,685 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."name" FROM "manifest" AS "t1" INNER JOIN "mediatype" AS "t2" ON ("t1"."media_type_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [18, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,687 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id", "t2"."id", "t2"."repository_id", "t2"."digest", "t2"."media_type_id", "t2"."manifest_bytes", "t2"."config_media_type", "t2"."layers_compressed_size", "t2"."subject", "t2"."subject_backfilled", "t2"."artifact_type", "t2"."artifact_type_backfilled" FROM "tag" AS "t1" INNER JOIN "manifest" AS "t2" ON ("t1"."manifest_id" = "t2"."id") WHERE (((("t1"."repository_id" = %s) AND ("t1"."name" = %s)) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" > %s))) AND ("t1"."hidden" = %s)) LIMIT %s OFFSET %s', [2, 'alpine1', None, 1758875827686, False, 1, 0]) securityworker stdout | 2025-09-26 08:37:07,687 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:37:07,688 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:37:07,689 [257] [DEBUG] [peewee] ('INSERT INTO "tag" ("name", "repository_id", "manifest_id", "lifetime_start_ms", "lifetime_end_ms", "immutable", "hidden", "reversion", "tag_kind_id") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "tag"."id"', ['alpine1', 2, 18, 1758875827686, None, False, False, False, 1]) gunicorn-registry stdout | 2025-09-26 08:37:07,691 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,692 [257] [DEBUG] [util.audit] Checking publishing push_repo to the user events system gunicorn-registry stdout | 2025-09-26 08:37:07,692 [257] [DEBUG] [util.audit] Publishing push_repo to the user events system gunicorn-registry stdout | 2025-09-26 08:37:07,692 [257] [DEBUG] [util.audit] Logging the push_repo to analytics engine gunicorn-registry stdout | 2025-09-26 08:37:07,693 [257] [DEBUG] [util.audit] Resolving IP address 10.129.4.11 gunicorn-registry stdout | 2025-09-26 08:37:07,694 [257] [DEBUG] [util.audit] Resolved IP address 10.129.4.11 gunicorn-registry stdout | 2025-09-26 08:37:07,694 [257] [DEBUG] [util.audit] Logging the push_repo to logs system securityworker stdout | 2025-09-26 08:37:07,694 [86] [DEBUG] [util.migrate.allocator] Total range: 4-19 securityworker stdout | 2025-09-26 08:37:07,694 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:07,694 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 4-19 securityworker stdout | 2025-09-26 08:37:07,694 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 15 securityworker stderr | 2025-09-26 08:37:07 [86] [DEBUG] [util.migrate.allocator] Total range: 4-19 securityworker stderr | 2025-09-26 08:37:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:37:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 4-19 securityworker stderr | 2025-09-26 08:37:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 15 gunicorn-registry stdout | 2025-09-26 08:37:07,695 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."username" = %s) LIMIT %s OFFSET %s', ['testorg', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,696 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "logentrykind" AS "t1"', []) securityworker stdout | 2025-09-26 08:37:07,695 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 15, 19]) gunicorn-registry stdout | 2025-09-26 08:37:07,698 [257] [DEBUG] [peewee] ('INSERT INTO "logentry3" ("kind_id", "account_id", "performer_id", "repository_id", "datetime", "ip", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s) RETURNING "logentry3"."id"', [42, 3, 1, 2, datetime.datetime(2025, 9, 26, 8, 37, 7, 694451), '10.129.4.11', '{"repo": "alpine", "namespace": "testorg", "user-agent": "skopeo/1.14.5", "tag": "alpine1", "username": "quay", "resolved_ip": {"provider": "internet", "service": null, "sync_token": "1645662201", "country_iso_code": null, "aws_region": null, "continent": null}}']) securityworker stderr | 2025-09-26 08:37:07 [86] [DEBUG] [util.migrate.allocator] Found 4 candidates, processing block start: 15 end: 19 by worker securityworker stdout | 2025-09-26 08:37:07,699 [86] [DEBUG] [util.migrate.allocator] Found 4 candidates, processing block start: 15 end: 19 by worker securityworker stdout | 2025-09-26 08:37:07,699 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [15, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,700 [257] [DEBUG] [util.audit] Track and log of push_repo complete gunicorn-registry stdout | 2025-09-26 08:37:07,701 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."repository_id", "t1"."event_id", "t1"."method_id", "t1"."title", "t1"."config_json", "t1"."event_config_json", "t1"."number_of_failures", "t1"."last_ran_ms", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state", "t3"."id", "t3"."uuid", "t3"."username", "t3"."password_hash", "t3"."email", "t3"."verified", "t3"."stripe_id", "t3"."organization", "t3"."robot", "t3"."invoice_email", "t3"."invalid_login_attempts", "t3"."last_invalid_login", "t3"."removed_tag_expiration_s", "t3"."enabled", "t3"."invoice_email_address", "t3"."given_name", "t3"."family_name", "t3"."company", "t3"."location", "t3"."maximum_queued_builds_count", "t3"."creation_date", "t3"."last_accessed" FROM "repositorynotification" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") INNER JOIN "user" AS "t3" ON ("t2"."namespace_user_id" = "t3"."id") INNER JOIN "externalnotificationevent" AS "t4" ON ("t1"."event_id" = "t4"."id") WHERE ((("t3"."username" = %s) AND ("t2"."name" = %s)) AND ("t4"."name" = %s))', ['testorg', 'alpine', 'repo_push']) securityworker stdout | 2025-09-26 08:37:07,703 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:c26023b0d841656913ab6cac3f47943f150dd7e9a307d1300fda95eb157c962d', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:07,703 [257] [DEBUG] [app] Ending request: urn:request:eaeceffe-55ee-4e07-b4dd-a47b8cd683c3 (/v2/testorg/alpine/manifests/alpine1) {'endpoint': 'v2.write_manifest_by_tagname', 'request_id': 'urn:request:eaeceffe-55ee-4e07-b4dd-a47b8cd683c3', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg/alpine/manifests/alpine1', 'path': '/v2/testorg/alpine/manifests/alpine1', 'parameters': {}, 'json_body': {'manifests': [{'annotations': {'com.docker.official-images.bashbrew.arch': 'amd64', 'org.opencontainers.image.base.name': 'scratch', 'org.opencontainers.image.created': '2025-05-30T18:04:04Z', 'org.opencontainers.image.revision': '5213c5a71c73d39d5896657909e753effb1c05ff', 'org.opencontainers.image.source': 'https://github.com/alpinelinux/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:x86_64', 'org.opencontainers.image.url': 'https://hub.docker.com/_/alpine', 'org.opencontainers.image.version': '3.22.0'}, 'digest': 'sha256:08001109a7d679fe33b04fa51d681bd40b975d8f5cea8c3ef6c0eccb6a7338ce', 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'platform': {'architecture': 'amd64', 'os': 'linux'}, 'size': 1022}, {'annotations': {'com.docker.official-images.bashbrew.arch': 'amd64', 'vnd.docker.reference.digest': 'sha256:08001109a7d679fe33b04fa51d681bd40b975d8f5cea8c3ef6c0eccb6a7338ce', 'vnd.docker.reference.type': 'attestation-manifest'}, 'digest': 'sha256:bd4199eb785a74df05d995ccf017888413746b5566e0b401b93a173859f0827f', 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'platform': {'architecture': 'unknown', 'os': 'unknown'}, 'size': 838}, {'annotations': {'com.docker.official-images.bashbrew.arch': 'arm32v6', 'org.opencontainers.image.base.name': 'scratch', 'org.opencontainers.image.created': '2025-05-30T18:04:23Z', 'org.opencontainers.image.revision': '5213c5a71c73d39d5896657909e753effb1c05ff', 'org.opencontainers.image.source': 'https://github.com/alpinelinux/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:armhf', 'org.opencontainers.image.url': 'https://hub.docker.com/_/alpine', 'org.opencontainers.image.version': '3.22.0'}, 'digest': 'sha256:a1c858aaff07c8da76e480d63c94e025c6317862dd2825c5ab2f4bf138a4c5dd', 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'platform': {'architecture': 'arm', 'os': 'linux', 'variant': 'v6'}, 'size': 1023}, {'annotations': {'com.docker.official-images.bashbrew.arch': 'arm32v6', 'vnd.docker.reference.digest': 'sha256:a1c858aaff07c8da76e480d63c94e025c6317862dd2825c5ab2f4bf138a4c5dd', 'vnd.docker.reference.type': 'attestation-manifest'}, 'digest': 'sha256:1475ea648c2027063f90bc98072ee2197ceec56e17de472f7f9777b8944e9c38', 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'platform': {'architecture': 'unknown', 'os': 'unknown'}, 'size': 566}, {'annotations': {'com.docker.official-images.bashbrew.arch': 'arm32v7', 'org.opencontainers.image.base.name': 'scratch', 'org.opencontainers.image.created': '2025-05-30T18:14:13Z', 'org.opencontainers.image.revision': '5213c5a71c73d39d5896657909e753effb1c05ff', 'org.opencontainers.image.source': 'https://github.com/alpinelinux/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:armv7', 'org.opencontainers.image.url': 'https://hub.docker.com/_/alpine', 'org.opencontainers.image.version': '3.22.0'}, 'digest': 'sha256:0b762e487f7a8eb308da049b9a1edfaef7345f847399c27899d49c10e9c325b9', 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'platform': {'architecture': 'arm', 'os': 'linux', 'variant': 'v7'}, 'size': 1023}, {'annotations': {'com.docker.official-images.bashbrew.arch': 'arm32v7', 'vnd.docker.reference.digest': 'sha256:0b762e487f7a8eb308da049b9a1edfaef7345f847399c27899d49c10e9c325b9', 'vnd.docker.reference.type': 'attestation-manifest'}, 'digest': 'sha256:256ffbe4e66db68c5d3ecd54b64e5b341158a10659859a838647d1432ea6a30a', 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'platform': {'architecture': 'unknown', 'os': 'unknown'}, 'size': 838}, {'annotations': {'com.docker.official-images.bashbrew.arch': 'arm64v8', 'org.opencontainers.image.base.name': 'scratch', 'org.opencontainers.image.created': '2025-05-30T18:15:12Z', 'org.opencontainers.image.revision': '5213c5a71c73d39d5896657909e753effb1c05ff', 'org.opencontainers.image.source': 'https://github.com/alpinelinux/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:aarch64', 'org.opencontainers.image.url': 'https://hub.docker.com/_/alpine', 'org.opencontainers.image.version': '3.22.0'}, 'digest': 'sha256:008448246686fe28544e36ba89e7bc7fbe6dad8a2ccdef576875c74298c46348', 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'platform': {'architecture': 'arm64', 'os': 'linux', 'variant': 'v8'}, 'size': 1025}, {'annotations': {'com.docker.official-images.bashbrew.arch': 'arm64v8', 'vnd.docker.reference.digest': 'sha256:008448246686fe28544e36ba89e7bc7fbe6dad8a2ccdef576875c74298c46348', 'vnd.docker.reference.type': 'attestation-manifest'}, 'digest': 'sha256:c2f35176d51645644dac998abfd7357827f01ca6d7a66b9c846178ddec8e3b80', 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'platform': {'architecture': 'unknown', 'os': 'unknown'}, 'size': 838}, {'annotations': {'com.docker.official-images.bashbrew.arch': 'i386', 'org.opencontainers.image.base.name': 'scratch', 'org.opencontainers.image.created': '2025-05-30T18:04:05Z', 'org.opencontainers.image.revision': '5213c5a71c73d39d5896657909e753effb1c05ff', 'org.opencontainers.image.source': 'https://github.com/alpinelinux/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:x86', 'org.opencontainers.image.url': 'https://hub.docker.com/_/alpine', 'org.opencontainers.image.version': '3.22.0'}, 'digest': 'sha256:af11d8e82a84ada96b5af358e796120e1c83f685d077b25ec05af8e6bc8827b6', 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'platform': {'architecture': '386', 'os': 'linux'}, 'size': 1018}, {'annotations': {'com.docker.official-images.bashbrew.arch': 'i386', 'vnd.docker.reference.digest': 'sha256:af11d8e82a84ada96b5af358e796120e1c83f685d077b25ec05af8e6bc8827b6', 'vnd.docker.reference.type': 'attestation-manifest'}, 'digest': 'sha256:c14851cd48d13b30981b7513c11e72f2cd7a90217efbce4d48233b5cfe23182f', 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'platform': {'architecture': 'unknown', 'os': 'unknown'}, 'size': 838}, {'annotations': {'com.docker.official-images.bashbrew.arch': 'ppc64le', 'org.opencontainers.image.base.name': 'scratch', 'org.opencontainers.image.created': '2025-05-30T18:14:08Z', 'org.opencontainers.image.revision': '5213c5a71c73d39d5896657909e753effb1c05ff', 'org.opencontainers.image.source': 'https://github.com/alpinelinux/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:ppc64le', 'org.opencontainers.image.url': 'https://hub.docker.com/_/alpine', 'org.opencontainers.image.version': '3.22.0'}, 'digest': 'sha256:b058f50906dff72a20c83582eddad899cd501b7e4a0caca511cfdad19a129c30', 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'platform': {'architecture': 'ppc64le', 'os': 'linux'}, 'size': 1025}, {'annotations': {'com.docker.official-images.bashbrew.arch': 'ppc64le', 'vnd.docker.reference.digest': 'sha256:b058f50906dff72a20c83582eddad899cd501b7e4a0caca511cfdad19a129c30', 'vnd.docker.reference.type': 'attestation-manifest'}, 'digest': 'sha256:cb1862fbe7951d7e19bf6012f18368a99531938db355638492374c14c50cd50d', 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'platform': {'architecture': 'unknown', 'os': 'unknown'}, 'size': 838}, {'annotations': {'com.docker.official-images.bashbrew.arch': 'riscv64', 'org.opencontainers.image.base.name': 'scratch', 'org.opencontainers.image.created': '2025-05-30T18:53:56Z', 'org.opencontainers.image.revision': '5213c5a71c73d39d5896657909e753effb1c05ff', 'org.opencontainers.image.source': 'https://github.com/alpinelinux/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:riscv64', 'org.opencontainers.image.url': 'https://hub.docker.com/_/alpine', 'org.opencontainers.image.version': '3.22.0'}, 'digest': 'sha256:d17c97e1ccf6490cb90fa17f6f021e404401d2656928631c73fd75ee711d87bd', 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'platform': {'architecture': 'riscv64', 'os': 'linux'}, 'size': 1025}, {'annotations': {'com.docker.official-images.bashbrew.arch': 'riscv64', 'vnd.docker.reference.digest': 'sha256:d17c97e1ccf6490cb90fa17f6f021e404401d2656928631c73fd75ee711d87bd', 'vnd.docker.reference.type': 'attestation-manifest'}, 'digest': 'sha256:6c177c7cb8fd7f03ea99c3fa679e1160487ad19131b174fbdbd5658f222e53ef', 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'platform': {'architecture': 'unknown', 'os': 'unknown'}, 'size': 838}, {'annotations': {'com.docker.official-images.bashbrew.arch': 's390x', 'org.opencontainers.image.base.name': 'scratch', 'org.opencontainers.image.created': '2025-05-30T18:13:01Z', 'org.opencontainers.image.revision': '5213c5a71c73d39d5896657909e753effb1c05ff', 'org.opencontainers.image.source': 'https://github.com/alpinelinux/docker-alpine.git#5213c5a71c73d39d5896657909e753effb1c05ff:s390x', 'org.opencontainers.image.url': 'https://hub.docker.com/_/alpine', 'org.opencontainers.image.version': '3.22.0'}, 'digest': 'sha256:4b2235713e64d414107b901ceb31c8f53c55b66346170aad3feed8a916a7a5b9', 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'platform': {'architecture': 's390x', 'os': 'linux'}, 'size': 1021}, {'annotations': {'com.docker.official-images.bashbrew.arch': 's390x', 'vnd.docker.reference.digest': 'sha256:4b2235713e64d414107b901ceb31c8f53c55b66346170aad3feed8a916a7a5b9', 'vnd.docker.reference.type': 'attestation-manifest'}, 'digest': 'sha256:b10cbe44bc0377ff7e0942c2e9ed9a655d050e577ac4bc8852b7868cc304f098', 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'platform': {'architecture': 'unknown', 'os': 'unknown'}, 'size': 838}], 'mediaType': 'application/vnd.oci.image.index.v1+json', 'schemaVersion': 2}, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:07,703 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:07,703 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:07 +0000] "PUT /v2/testorg/alpine/manifests/alpine1 HTTP/1.1" 201 2 "-" "skopeo/1.14.5" (0.419 10971 0.419) gunicorn-registry stdout | 2025-09-26 08:37:07,704 [257] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:07 +0000] "PUT /v2/testorg/alpine/manifests/alpine1 HTTP/1.1" 201 2 "-" "skopeo/1.14.5" securityworker stdout | 2025-09-26 08:37:07,704 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['379a12ca-bb57-4df0-a868-be3e0a060579']) securityworker stdout | 2025-09-26 08:37:07,706 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:37:07,707 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:37:07,707 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/c2/c26023b0d841656913ab6cac3f47943f150dd7e9a307d1300fda95eb157c962d'} securityworker stdout | 2025-09-26 08:37:07,707 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,707 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,707 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,707 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:07,707 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,707 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:07,707 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:07,707 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:07,707 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:07,707 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:07,708 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:07,708 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,708 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,708 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,708 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/c2/c26023b0d841656913ab6cac3f47943f150dd7e9a307d1300fda95eb157c962d', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c2/c26023b0d841656913ab6cac3f47943f150dd7e9a307d1300fda95eb157c962d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c2/c26023b0d841656913ab6cac3f47943f150dd7e9a307d1300fda95eb157c962d', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/c2/c26023b0d841656913ab6cac3f47943f150dd7e9a307d1300fda95eb157c962d'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:07,708 [257] [DEBUG] [data.userevent] Published user event docker-cli: {'action': 'push_repo', 'repository': 'alpine', 'namespace': 'testorg'} securityworker stdout | 2025-09-26 08:37:07,708 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:07,708 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:07,709 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,709 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,709 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:37:07,709 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c2/c26023b0d841656913ab6cac3f47943f150dd7e9a307d1300fda95eb157c962d securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083707Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:37:07,709 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083707Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | 62031ad2027c9dc66378a1f733819e7fcdb4c99756894a0bc5020299cbbefab8 securityworker stdout | 2025-09-26 08:37:07,709 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | 70cfed0058d0b434fd937d0f29ab4a46fa12f0199687ece530e153b5a6041ba0 securityworker stdout | 2025-09-26 08:37:07,709 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,709 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:37:07,709 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:37:07,710 [86] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local securityworker stdout | 2025-09-26 08:37:07,746 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c2/c26023b0d841656913ab6cac3f47943f150dd7e9a307d1300fda95eb157c962d HTTP/1.1" 200 241 securityworker stdout | 2025-09-26 08:37:07,746 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96hh-ewbwnl-5ug', 'x-amz-id-2': 'mg0l96hh-ewbwnl-5ug', 'ETag': '"84640d82a0cfebe3cecb2a047dce8a32-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:02 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:37:07,746 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:37:07,747 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,747 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:37:07,747 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:07,747 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l96hh-ewbwnl-5ug', 'HostId': 'mg0l96hh-ewbwnl-5ug', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96hh-ewbwnl-5ug', 'x-amz-id-2': 'mg0l96hh-ewbwnl-5ug', 'etag': '"84640d82a0cfebe3cecb2a047dce8a32-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:02 GMT', 'content-type': 'application/octet-stream', 'content-length': '241', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 2, tzinfo=tzutc()), 'ContentLength': 241, 'ETag': '"84640d82a0cfebe3cecb2a047dce8a32-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } securityworker stdout | 2025-09-26 08:37:07,749 [86] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL ((SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1") UNION ALL (SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "manifestblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q2"))', [2, 'sha256:67fddcb95396e53298f4ac7df9a3d3b39dd0e8e18e97231294f852ec23e112c6', 1, 2, 'sha256:c26023b0d841656913ab6cac3f47943f150dd7e9a307d1300fda95eb157c962d', 1, 2, 'sha256:a7e0e8d6ce05cff88c5a5220b9b7fab1e03122e76c49e794609354d1f7a9a168', 1]) securityworker stdout | 2025-09-26 08:37:07,751 [86] [ERROR] [data.registry_model.registry_oci_model] Could not list manifest layers `15` securityworker stdout | Traceback (most recent call last): securityworker stdout | File "/quay-registry/data/registry_model/registry_oci_model.py", line 666, in list_manifest_layers securityworker stdout | layers = self._list_manifest_layers( securityworker stdout | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ securityworker stdout | File "/quay-registry/data/registry_model/registry_oci_model.py", line 1263, in _list_manifest_layers securityworker stdout | for layer in layers: securityworker stdout | ^^^^^^ securityworker stdout | File "/quay-registry/image/oci/manifest.py", line 308, in get_layers securityworker stdout | command=image_layer.history.command, securityworker stdout | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ securityworker stdout | AttributeError: 'NoneType' object has no attribute 'command' securityworker stdout | 2025-09-26 08:37:07,752 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) securityworker stdout | 2025-09-26 08:37:07,754 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:37:07,755 [86] [WARNING] [data.secscan_model.secscan_v4_model] Cannot index 3/alpine@sha256:6c177c7cb8fd7f03ea99c3fa679e1160487ad19131b174fbdbd5658f222e53ef due to manifest being invalid (manifest has no layers) securityworker stdout | 2025-09-26 08:37:07,755 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE (("manifestsecuritystatus"."manifest_id" = %s) AND ("manifestsecuritystatus"."repository_id" = %s))', [15, 2]) securityworker stdout | 2025-09-26 08:37:07,756 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [15, 2, -2, '{}', datetime.datetime(2025, 9, 26, 8, 37, 7, 755982), 'none', 4, '{}']) securityworker stdout | 2025-09-26 08:37:07,758 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [16, 1, 0]) securityworker stdout | 2025-09-26 08:37:07,760 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 1, 0]) securityworker stdout | 2025-09-26 08:37:07,761 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['a4d27724-286e-4842-be05-e33cb13571b7']) securityworker stdout | 2025-09-26 08:37:07,762 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:37:07,763 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:37:07,764 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655'} securityworker stdout | 2025-09-26 08:37:07,764 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,764 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,764 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,764 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:07,764 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,764 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:07,764 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:07,764 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:07,764 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:07,764 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:07,764 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:07,765 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,765 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,765 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,765 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:37:07,765 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:07,765 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:07,765 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,765 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,765 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:37:07,765 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655 securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083707Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:37:07,765 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083707Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | 61a66921c936d2c31ba22a76437e08dcbd78fdb35fb5aa6db720bdc23891068c securityworker stdout | 2025-09-26 08:37:07,765 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | fa258254a9d437944b38b4dea5cd46c2d7e1422ae87be72ff0c358857c56218b securityworker stdout | 2025-09-26 08:37:07,766 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,766 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:37:07,766 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:37:07,779 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d7/d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655 HTTP/1.1" 200 580 securityworker stdout | 2025-09-26 08:37:07,779 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96if-fgqxwj-13cu', 'x-amz-id-2': 'mg0l96if-fgqxwj-13cu', 'ETag': '"7478be6b88f1ffd40bbbd0969bfa45ef-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:05 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '580', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:37:07,779 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:37:07,780 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,780 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:37:07,780 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:07,780 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l96if-fgqxwj-13cu', 'HostId': 'mg0l96if-fgqxwj-13cu', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l96if-fgqxwj-13cu', 'x-amz-id-2': 'mg0l96if-fgqxwj-13cu', 'etag': '"7478be6b88f1ffd40bbbd0969bfa45ef-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:05 GMT', 'content-type': 'application/octet-stream', 'content-length': '580', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:07 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 5, tzinfo=tzutc()), 'ContentLength': 580, 'ETag': '"7478be6b88f1ffd40bbbd0969bfa45ef-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } securityworker stdout | 2025-09-26 08:37:07,782 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4', 1, 0]) securityworker stdout | 2025-09-26 08:37:07,783 [86] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL (SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1")', [2, 'sha256:d70fe15f9be3d15fea659cd54e3267b83bc5eca667fd46f7ce256a9c5c76b655', 1, 2, 'sha256:47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1', 1]) securityworker stdout | 2025-09-26 08:37:07,784 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['1dcddc11-0c32-4e76-95dc-72585a984b3e']) securityworker stdout | 2025-09-26 08:37:07,785 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:37:07,786 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s)', [16]) securityworker stdout | 2025-09-26 08:37:07,788 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) securityworker stdout | 2025-09-26 08:37:07,789 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:37:07,789 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Indexing manifest [16] 3/alpine@sha256:4b2235713e64d414107b901ceb31c8f53c55b66346170aad3feed8a916a7a5b9 securityworker stdout | 2025-09-26 08:37:07,790 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,790 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,790 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,790 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:07,790 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,790 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:07,790 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:07,790 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:07,790 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:07,790 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:07,790 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:07,790 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:07,790 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,790 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:07,790 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:07,791 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876427 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1 securityworker stdout | 2025-09-26 08:37:07,797 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ESTNMQ0pwWVhRaU9qRTNOVGc0TnpVNE1qY3NJbVY0Y0NJNk1UYzFPRGczTmpReU55d2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4ME55ODBOMkUzTUdaa1l6aGhZelJqTVRJM00yUmxOakkyWkdNM056RXdaRE5sTVRsalptUTFZamxtTTJVeE1HTm1ZelJpTVRRMk1ESmlaR1ptWm1KbVptVXhQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVTNFNVJsUktkM0pLSlRKR1EyMW5aWElsTWtKcWFEbG9PR04zYjAxRkpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qUXlOeUlzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5qak90eHFfSnRpS3FfVy1WYnZvVmlLemI0RXRFcTVEcHZMVGt6NzlxTngtanEycTZYdkU3NlQzZzlfVDdFNlFRZmJiZ21xOV9Nb1JhZWtYYjFEbzBfaHdBb3NkcTJTUXplanVqcTUxb1lYYXVrY1VfUDBTQ0JMZ3BMM0ZIS2tkaFRWNm12U08yOUtvb015QlhMZExxZzRCSDFVQ090N1EwQ0NnVVVNdEFybkM2SEtZTjAyaDc2aF9xZUNmTXJsWjJqem1XMFlSb0gyWk14SGQtLUF1UTEtangtNmppN2lmbk1DT1BZcFprSGs4c0VFcDcxSl9EU01SVkt5S0FoOWEwNjlsSGRYVWtscW9FWE9oWTJRZXN2M0hrWWlJN1NEOTR2VFdCOFRURU5aSU80RjRJZGd3WHNWUWJKOEpyZ0ExRzZ1Q2dnbkM2cy1QR3ZSRHNXTXVGOWc=/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QSq9FTJwrJ%2FCmger%2Bjh9h8cwoME%3D&Expires=1758876427 securityworker stdout | 2025-09-26 08:37:07,797 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,797 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,797 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,797 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:07,797 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,797 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:07,797 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:07,797 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:07,797 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:07,797 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:07,797 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:07,797 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:07,797 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,798 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:07,798 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:07,798 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876427 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1 securityworker stdout | 2025-09-26 08:37:07,803 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ESTNMQ0pwWVhRaU9qRTNOVGc0TnpVNE1qY3NJbVY0Y0NJNk1UYzFPRGczTmpReU55d2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4ME55ODBOMkUzTUdaa1l6aGhZelJqTVRJM00yUmxOakkyWkdNM056RXdaRE5sTVRsalptUTFZamxtTTJVeE1HTm1ZelJpTVRRMk1ESmlaR1ptWm1KbVptVXhQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFSVTNFNVJsUktkM0pLSlRKR1EyMW5aWElsTWtKcWFEbG9PR04zYjAxRkpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qUXlOeUlzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5qak90eHFfSnRpS3FfVy1WYnZvVmlLemI0RXRFcTVEcHZMVGt6NzlxTngtanEycTZYdkU3NlQzZzlfVDdFNlFRZmJiZ21xOV9Nb1JhZWtYYjFEbzBfaHdBb3NkcTJTUXplanVqcTUxb1lYYXVrY1VfUDBTQ0JMZ3BMM0ZIS2tkaFRWNm12U08yOUtvb015QlhMZExxZzRCSDFVQ090N1EwQ0NnVVVNdEFybkM2SEtZTjAyaDc2aF9xZUNmTXJsWjJqem1XMFlSb0gyWk14SGQtLUF1UTEtangtNmppN2lmbk1DT1BZcFprSGs4c0VFcDcxSl9EU01SVkt5S0FoOWEwNjlsSGRYVWtscW9FWE9oWTJRZXN2M0hrWWlJN1NEOTR2VFdCOFRURU5aSU80RjRJZGd3WHNWUWJKOEpyZ0ExRzZ1Q2dnbkM2cy1QR3ZSRHNXTXVGOWc=/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/47/47a70fdc8ac4c1273de626dc7710d3e19cfd5b9f3e10cfc4b14602bdfffbffe1?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=QSq9FTJwrJ%2FCmger%2Bjh9h8cwoME%3D&Expires=1758876427 securityworker stdout | 2025-09-26 08:37:07,803 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,803 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,803 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,803 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:07,803 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,804 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:07,804 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:07,804 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:07,804 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:07,804 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:07,804 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:07,804 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:07,804 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,804 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:07,804 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:07,804 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876427 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:37:07,810 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ESTNMQ0pwWVhRaU9qRTNOVGc0TnpVNE1qY3NJbVY0Y0NJNk1UYzFPRGczTmpReU55d2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFtZUdKdFNsbHdhM0JLTUdreGFYcGxaa2cwZEdzbE1rSkdUR1Y1Y3lVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1qY2lMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSkRxX0h2TmRxV25EckwzV0RuOVpjSkVVTnNFYnFoV0l5b2tMbXJMMmZiZDY5OTI1ZXNiUzdRcnlVT1FrbVBQVE1rUHYtTzVBa0dTd2ozS1Jqcmt0eE52Ty1xbVliMzRlVi0xd0x0TDl3SlFEU3RVXzVxanpfUmdvSUV5M254VUlZLWg5ZlAxVFpqcE5pYjVvTFRBM0EyQVJuWkUza1pUNThKQlJDT2hxQjhxbUNMSElHSm50MEpqazlIQUtqUnd2bGZQaVhIc2lkUlUyWThRS1pvY3dNcXRTcTZMMmRsTnphVHBtYWNzMGxzb1ZBWTNHNFpERk5UU0I3TWZtOWlESlg5cGpZNDBzRHo2M0pDU0ttYUdtVWU3QUJhb3F4WDBVT0RJbzZ3XzNZTnNqeGFZS2pKMzA0ODBhdGJPalpjWlVnZ1g1OVoxNHp5bTU4SlFMY0hWMmNR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=fxbmJYpkpJ0i1izefH4tk%2BFLeys%3D&Expires=1758876427 securityworker stdout | 2025-09-26 08:37:07,810 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,811 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,811 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,811 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:07,811 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,811 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:07,811 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:07,811 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:07,811 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:07,811 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:07,811 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:07,811 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:07,811 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:07,811 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:07,811 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:07,811 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876427 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:37:07,817 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ESTNMQ0pwWVhRaU9qRTNOVGc0TnpVNE1qY3NJbVY0Y0NJNk1UYzFPRGczTmpReU55d2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFtZUdKdFNsbHdhM0JLTUdreGFYcGxaa2cwZEdzbE1rSkdUR1Y1Y3lVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME1qY2lMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuSkRxX0h2TmRxV25EckwzV0RuOVpjSkVVTnNFYnFoV0l5b2tMbXJMMmZiZDY5OTI1ZXNiUzdRcnlVT1FrbVBQVE1rUHYtTzVBa0dTd2ozS1Jqcmt0eE52Ty1xbVliMzRlVi0xd0x0TDl3SlFEU3RVXzVxanpfUmdvSUV5M254VUlZLWg5ZlAxVFpqcE5pYjVvTFRBM0EyQVJuWkUza1pUNThKQlJDT2hxQjhxbUNMSElHSm50MEpqazlIQUtqUnd2bGZQaVhIc2lkUlUyWThRS1pvY3dNcXRTcTZMMmRsTnphVHBtYWNzMGxzb1ZBWTNHNFpERk5UU0I3TWZtOWlESlg5cGpZNDBzRHo2M0pDU0ttYUdtVWU3QUJhb3F4WDBVT0RJbzZ3XzNZTnNqeGFZS2pKMzA0ODBhdGJPalpjWlVnZ1g1OVoxNHp5bTU4SlFMY0hWMmNR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=fxbmJYpkpJ0i1izefH4tk%2BFLeys%3D&Expires=1758876427 securityworker stdout | 2025-09-26 08:37:07,817 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:37:07,818 [86] [DEBUG] [util.secscan.v4.api] POSTing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_report gunicorn-registry stdout | 2025-09-26 08:37:08,673 [256] [DEBUG] [app] Starting request: urn:request:4a37e15b-4b5f-4c06-8360-83522430e020 (/v2/testorg2/alpine/blobs/sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:08,673 [256] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:08,673 [256] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:08,673 [256] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:08,674 [256] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:08,674 [256] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:08,674 [256] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:08,674 [256] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:08,674 [256] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:08,675 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,676 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,678 [256] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:08,678 [256] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8_2 gunicorn-registry stdout | 2025-09-26 08:37:08,678 [256] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:08,679 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,680 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,681 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,682 [256] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,683 [256] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,684 [256] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8_2: None gunicorn-registry stdout | 2025-09-26 08:37:08,685 [256] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8_2: None gunicorn-registry stdout | 2025-09-26 08:37:08,685 [256] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:08,685 [256] [DEBUG] [app] Ending request: urn:request:4a37e15b-4b5f-4c06-8360-83522430e020 (/v2/testorg2/alpine/blobs/sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:4a37e15b-4b5f-4c06-8360-83522430e020', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8', 'path': '/v2/testorg2/alpine/blobs/sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:08,685 [256] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:08,685 [256] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:08 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.013 1718 0.013) gunicorn-registry stdout | 2025-09-26 08:37:08,685 [256] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:08 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" namespacegcworker stdout | 2025-09-26 08:37:08,794 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:37:08,794 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:59.791127+00:00 (in 50.996871 seconds) namespacegcworker stdout | 2025-09-26 08:37:08,794 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:08 GMT)" (scheduled at 2025-09-26 08:37:08.793810+00:00) namespacegcworker stdout | 2025-09-26 08:37:08,794 [66] [DEBUG] [workers.queueworker] Running watchdog. namespacegcworker stdout | 2025-09-26 08:37:08,794 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:08 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:37:08,839 [251] [DEBUG] [app] Starting request: urn:request:b652676b-3a77-4c8a-a027-88082ce84958 (/v2/testorg2/alpine/blobs/sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:08,840 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:08,840 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:08,840 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:08,841 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:08,841 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:08,841 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:08,841 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:08,841 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:08,842 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,843 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,844 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:08,844 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8_2 gunicorn-registry stdout | 2025-09-26 08:37:08,844 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:08,845 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,847 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,848 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,849 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,850 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,851 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8_2: None gunicorn-registry stdout | 2025-09-26 08:37:08,851 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8_2: None gunicorn-registry stdout | 2025-09-26 08:37:08,851 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:08,851 [251] [DEBUG] [app] Ending request: urn:request:b652676b-3a77-4c8a-a027-88082ce84958 (/v2/testorg2/alpine/blobs/sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:b652676b-3a77-4c8a-a027-88082ce84958', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8', 'path': '/v2/testorg2/alpine/blobs/sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:08,852 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:08,852 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:08,852 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:08 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:08 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.014 1718 0.014) gunicorn-registry stdout | 2025-09-26 08:37:08,893 [251] [DEBUG] [app] Starting request: urn:request:f7765781-17f1-4a43-a957-9b64cd4dc976 (/v2/testorg2/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:08,893 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:08,893 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:08,893 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:08,894 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:08,894 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:08,894 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:08,894 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:08,894 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:08,895 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,896 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,897 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,898 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,899 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,900 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,901 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:08,902 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:08,904 [251] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [3, '7d049b3d-737b-450f-9ef5-0e1d718803b5', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 37, 8, 903726)]) gunicorn-registry stdout | 2025-09-26 08:37:08,906 [251] [DEBUG] [app] Ending request: urn:request:f7765781-17f1-4a43-a957-9b64cd4dc976 (/v2/testorg2/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:f7765781-17f1-4a43-a957-9b64cd4dc976', 'remote_addr': '10.129.4.11', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/', 'path': '/v2/testorg2/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:08,906 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:08,906 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:08 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.014 1697 0.014) gunicorn-registry stdout | 2025-09-26 08:37:08,906 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:08 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" gunicorn-web stdout | 2025-09-26 08:37:09,671 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:37:09,676 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:37:09,715 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:37:09,727 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:37:09,730 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gcworker stdout | 2025-09-26 08:37:09,822 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} gunicorn-registry stdout | 2025-09-26 08:37:09,827 [258] [DEBUG] [app] Starting request: urn:request:a65a45c2-56ce-4896-8555-deb43911f649 (/v2/testorg2/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:09,827 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:09,827 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:09,827 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:09,828 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:09,828 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:09,828 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:09,828 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:09,828 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:09,830 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:09,831 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:09,832 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:09,834 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:09,834 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:09,836 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:09,837 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:09,838 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:09,839 [258] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [3, 'f9793486-e186-4fab-a586-33241e2833da', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 37, 9, 838838)]) gunicorn-registry stdout | 2025-09-26 08:37:09,841 [258] [DEBUG] [app] Ending request: urn:request:a65a45c2-56ce-4896-8555-deb43911f649 (/v2/testorg2/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:a65a45c2-56ce-4896-8555-deb43911f649', 'remote_addr': '10.129.4.11', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/', 'path': '/v2/testorg2/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:09,841 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:09,841 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:09,842 [258] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:09 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:09 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.015 1697 0.015) securityscanningnotificationworker stdout | 2025-09-26 08:37:10,007 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} queuecleanupworker stdout | 2025-09-26 08:37:10,222 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} gunicorn-secscan stdout | 2025-09-26 08:37:10,394 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} gunicorn-secscan stdout | 2025-09-26 08:37:10,398 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:37:10,403 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} securityscanningnotificationworker stdout | 2025-09-26 08:37:10,584 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:37:10,584 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:28.587130+00:00 (in 18.002266 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:37:10,585 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:10 GMT)" (scheduled at 2025-09-26 08:37:10.584403+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:37:10,585 [82] [DEBUG] [workers.queueworker] Getting work item from queue. securityscanningnotificationworker stdout | 2025-09-26 08:37:10,585 [82] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 37, 10, 585198), True, datetime.datetime(2025, 9, 26, 8, 37, 10, 585198), 0, 'secscanv4/%', 50, 1, 0]) securityscanningnotificationworker stdout | 2025-09-26 08:37:10,592 [82] [DEBUG] [workers.queueworker] No more work. securityscanningnotificationworker stdout | 2025-09-26 08:37:10,593 [82] [DEBUG] [data.database] Disconnecting from database. securityscanningnotificationworker stdout | 2025-09-26 08:37:10,593 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:10 GMT)" executed successfully autopruneworker stdout | 2025-09-26 08:37:10,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:37:10,598 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:40.598100+00:00 (in 29.999579 seconds) autopruneworker stdout | 2025-09-26 08:37:10,598 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:40 GMT)" (scheduled at 2025-09-26 08:37:10.598100+00:00) autopruneworker stdout | 2025-09-26 08:37:10,602 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758872230601, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:37:10,604 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:37:10,605 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:37:10,605 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:40 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:37:10,652 [257] [DEBUG] [app] Starting request: urn:request:cbbf405c-5379-4963-964e-b2d2ebc436ec (/v2/testorg2/alpine/blobs/sha256:5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:10,652 [257] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:10,652 [257] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:10,652 [257] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:10,654 [257] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:10,654 [257] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:10,654 [257] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:10,654 [257] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:10,654 [257] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:10,655 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,656 [255] [DEBUG] [app] Starting request: urn:request:6cdb1931-e761-42c7-b296-dbaae55417b2 (/v2/testorg2/alpine/blobs/sha256:ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:10,656 [255] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:10,656 [255] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:10,656 [255] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:10,657 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,657 [257] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:10,658 [257] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4_2 gunicorn-registry stdout | 2025-09-26 08:37:10,658 [257] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:10,658 [255] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:10,658 [255] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:10,658 [255] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:10,658 [255] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:10,658 [255] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:10,659 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,659 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,660 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,660 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,660 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,661 [255] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:10,661 [255] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2_2 gunicorn-registry stdout | 2025-09-26 08:37:10,661 [255] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:10,661 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,662 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,663 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,663 [257] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4_2: None gunicorn-registry stdout | 2025-09-26 08:37:10,664 [257] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4_2: None gunicorn-registry stdout | 2025-09-26 08:37:10,664 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,664 [257] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:10,664 [257] [DEBUG] [app] Ending request: urn:request:cbbf405c-5379-4963-964e-b2d2ebc436ec (/v2/testorg2/alpine/blobs/sha256:5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:cbbf405c-5379-4963-964e-b2d2ebc436ec', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4', 'path': '/v2/testorg2/alpine/blobs/sha256:5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:10,664 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:10,664 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:10,664 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,664 [257] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:10 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:10 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.013 1718 0.013) gunicorn-registry stdout | 2025-09-26 08:37:10,666 [255] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,667 [255] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,667 [255] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2_2: None gunicorn-registry stdout | 2025-09-26 08:37:10,667 [255] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2_2: None gunicorn-registry stdout | 2025-09-26 08:37:10,668 [255] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:10,668 [255] [DEBUG] [app] Ending request: urn:request:6cdb1931-e761-42c7-b296-dbaae55417b2 (/v2/testorg2/alpine/blobs/sha256:ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:6cdb1931-e761-42c7-b296-dbaae55417b2', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2', 'path': '/v2/testorg2/alpine/blobs/sha256:ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:10,668 [255] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:10,668 [255] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:10,668 [255] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:10 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:10 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.013 1718 0.013) securityworker stdout | 2025-09-26 08:37:10,686 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "POST /indexer/api/v1/index_report HTTP/1.1" 201 None securityworker stdout | 2025-09-26 08:37:10,690 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [16, 1, 0]) securityworker stdout | 2025-09-26 08:37:10,691 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [16, 1, 0]) securityworker stdout | 2025-09-26 08:37:10,692 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request notificationworker stdout | 2025-09-26 08:37:10,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:37:10,693 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/matcher/api/v1/vulnerability_report/sha256:4b2235713e64d414107b901ceb31c8f53c55b66346170aad3feed8a916a7a5b9 notificationworker stdout | 2025-09-26 08:37:10,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:20.692901+00:00 (in 9.999173 seconds) notificationworker stdout | 2025-09-26 08:37:10,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:20 GMT)" (scheduled at 2025-09-26 08:37:10.692901+00:00) notificationworker stdout | 2025-09-26 08:37:10,694 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:37:10,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 37, 10, 694055), True, datetime.datetime(2025, 9, 26, 8, 37, 10, 694055), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:37:10,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:37:10,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:37:10,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:20 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:37:10,844 [251] [DEBUG] [app] Starting request: urn:request:ee43628b-47d3-4d3e-af94-ca0487f7f92a (/v2/testorg2/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:10,844 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:10,844 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:10,844 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:10,845 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:10,845 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:10,845 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:10,845 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:10,846 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:10,847 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,848 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,849 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,850 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,851 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,852 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,853 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:10,853 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,854 [251] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [3, '96671777-09ab-4e60-ba62-9059c51fd4bc', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 37, 10, 854531)]) gunicorn-registry stdout | 2025-09-26 08:37:10,856 [251] [DEBUG] [app] Ending request: urn:request:ee43628b-47d3-4d3e-af94-ca0487f7f92a (/v2/testorg2/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:ee43628b-47d3-4d3e-af94-ca0487f7f92a', 'remote_addr': '10.131.2.20', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/', 'path': '/v2/testorg2/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:10,856 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:10,857 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:10,857 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:10 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:10 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.014 1697 0.014) gunicorn-registry stdout | 2025-09-26 08:37:10,898 [257] [DEBUG] [app] Starting request: urn:request:44568d59-2b3f-4a15-9708-6ef6cb579913 (/v2/testorg2/alpine/blobs/uploads/96671777-09ab-4e60-ba62-9059c51fd4bc) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:10,899 [257] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '96671777-09ab-4e60-ba62-9059c51fd4bc', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:10,899 [257] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:10,899 [257] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:10,900 [257] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:10,900 [257] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:10,900 [257] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:10,900 [257] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:10,900 [257] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:10,900 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,902 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,903 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,904 [257] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,905 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) securityworker stdout | 2025-09-26 08:37:10,906 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /matcher/api/v1/vulnerability_report/sha256:4b2235713e64d414107b901ceb31c8f53c55b66346170aad3feed8a916a7a5b9 HTTP/1.1" 200 None gunicorn-registry stdout | 2025-09-26 08:37:10,907 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,908 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,909 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:10,910 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['96671777-09ab-4e60-ba62-9059c51fd4bc', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,911 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:10,911 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:10,911 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:37:10,911 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Attempting to create notifications for manifest #16 securityworker stdout | 2025-09-26 08:37:10,911 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE ("manifestsecuritystatus"."manifest_id" = %s)', [16]) gunicorn-registry stdout | 2025-09-26 08:37:10,912 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:10,912 [257] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:10,912 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,912 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,912 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,912 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,912 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:10,912 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler securityworker stdout | 2025-09-26 08:37:10,912 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [16, 2, 2, '""', datetime.datetime(2025, 9, 26, 8, 37, 10, 912334), '37b46b4a70b6f1a19d5e4e18d21f57ff', 4, '{}']) gunicorn-registry stdout | 2025-09-26 08:37:10,912 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,912 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:10,913 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:10,913 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:10,913 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:10,913 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:10,913 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,913 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,913 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,913 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:10,913 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:10,913 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:10,913 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,913 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,914 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:10,914 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083710Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:10,914 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083710Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | aada7f604f9608c3224db67621c7ae34a907a855462368ca573fa275007c3187 gunicorn-registry stdout | 2025-09-26 08:37:10,914 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 9389b95e9907fd4185023b11ec436c8af17869772ece173d65201e263fcb4feb gunicorn-registry stdout | 2025-09-26 08:37:10,914 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,914 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:10,914 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:37:10,915 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [17, 1, 0]) securityworker stdout | 2025-09-26 08:37:10,917 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31', 1, 0]) securityworker stdout | 2025-09-26 08:37:10,918 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['d7873bc6-4118-430a-b483-9f08d2b41d65']) securityworker stdout | 2025-09-26 08:37:10,919 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:10,920 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:10,921 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l98xv-1dh3r2-au7', 'x-amz-id-2': 'mg0l98xv-1dh3r2-au7', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:10 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:10,921 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c2575268d650b6d73ec60008f934c1' gunicorn-registry stdout | 2025-09-26 08:37:10,921 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,921 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:10,921 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:10,921 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l98xv-1dh3r2-au7', 'HostId': 'mg0l98xv-1dh3r2-au7', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l98xv-1dh3r2-au7', 'x-amz-id-2': 'mg0l98xv-1dh3r2-au7', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:10 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752', 'UploadId': '68d650b6d73ec60008f934c1'} gunicorn-registry stdout | 2025-09-26 08:37:10,921 [257] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload securityworker stdout | 2025-09-26 08:37:10,921 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:37:10,921 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31'} securityworker stdout | 2025-09-26 08:37:10,921 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,921 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,921 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,921 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:10,921 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,921 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:10,921 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:10,922 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:10,922 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:10,922 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:10,922 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:10,922 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,922 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,922 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,922 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:37:10,923 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:10,923 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:10,923 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,923 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,923 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:37:10,923 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31 securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083710Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:37:10,923 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083710Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | 6ae2c807a178115cb8599c167db72f8915246ddb9560458fa0bc47f3de91c296 securityworker stdout | 2025-09-26 08:37:10,923 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | d1c6fde49e7b1d286a1fa30df6ab7be94737423d9243a48ed16ad66a1e94d372 securityworker stdout | 2025-09-26 08:37:10,923 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,923 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:37:10,924 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:37:10,937 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/db/dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31 HTTP/1.1" 200 241 securityworker stdout | 2025-09-26 08:37:10,937 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l98y5-1iydqe-32l', 'x-amz-id-2': 'mg0l98y5-1iydqe-32l', 'ETag': '"53322718ebdc1748c36dd9ac59b3279e-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:07 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:10 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:37:10,937 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:37:10,938 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,938 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:37:10,938 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:10,938 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l98y5-1iydqe-32l', 'HostId': 'mg0l98y5-1iydqe-32l', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l98y5-1iydqe-32l', 'x-amz-id-2': 'mg0l98y5-1iydqe-32l', 'etag': '"53322718ebdc1748c36dd9ac59b3279e-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:07 GMT', 'content-type': 'application/octet-stream', 'content-length': '241', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:10 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 7, tzinfo=tzutc()), 'ContentLength': 241, 'ETag': '"53322718ebdc1748c36dd9ac59b3279e-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } securityworker stdout | 2025-09-26 08:37:10,941 [86] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL ((SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1") UNION ALL (SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "manifestblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q2"))', [2, 'sha256:46fe55b2f760b35f41708fb01116dae87029350fffeb1d00f7dd0520587195c5', 1, 2, 'sha256:fdec4331f7983ecc43538c024e5777c434aad8cb1ddf08084a05a44390d6943e', 1, 2, 'sha256:dbeeaa840de093e1b95605ea87f1b4de22ec102327070084d581ec7bc1364c31', 1]) securityworker stdout | 2025-09-26 08:37:10,942 [86] [ERROR] [data.registry_model.registry_oci_model] Could not list manifest layers `17` securityworker stdout | Traceback (most recent call last): securityworker stdout | File "/quay-registry/data/registry_model/registry_oci_model.py", line 666, in list_manifest_layers securityworker stdout | layers = self._list_manifest_layers( securityworker stdout | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ securityworker stdout | File "/quay-registry/data/registry_model/registry_oci_model.py", line 1263, in _list_manifest_layers securityworker stdout | for layer in layers: securityworker stdout | ^^^^^^ securityworker stdout | File "/quay-registry/image/oci/manifest.py", line 308, in get_layers securityworker stdout | command=image_layer.history.command, securityworker stdout | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ securityworker stdout | AttributeError: 'NoneType' object has no attribute 'command' securityworker stdout | 2025-09-26 08:37:10,943 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) securityworker stdout | 2025-09-26 08:37:10,945 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:37:10,946 [86] [WARNING] [data.secscan_model.secscan_v4_model] Cannot index 3/alpine@sha256:b10cbe44bc0377ff7e0942c2e9ed9a655d050e577ac4bc8852b7868cc304f098 due to manifest being invalid (manifest has no layers) securityworker stdout | 2025-09-26 08:37:10,946 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE (("manifestsecuritystatus"."manifest_id" = %s) AND ("manifestsecuritystatus"."repository_id" = %s))', [17, 2]) securityworker stdout | 2025-09-26 08:37:10,947 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [17, 2, -2, '{}', datetime.datetime(2025, 9, 26, 8, 37, 10, 946834), 'none', 4, '{}']) securityworker stdout | 2025-09-26 08:37:10,949 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE (("manifestsecuritystatus"."manifest_id" = %s) AND ("manifestsecuritystatus"."repository_id" = %s))', [18, 2]) securityworker stdout | 2025-09-26 08:37:10,950 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [18, 2, -2, '{}', datetime.datetime(2025, 9, 26, 8, 37, 10, 949829), 'none', 4, '{}']) securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Marking id range as completed: 15-19 by worker securityworker stdout | 2025-09-26 08:37:10,951 [86] [DEBUG] [util.migrate.allocator] Marking id range as completed: 15-19 by worker securityworker stdout | 2025-09-26 08:37:10,951 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 15-19 securityworker stdout | 2025-09-26 08:37:10,951 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 15 securityworker stdout | 2025-09-26 08:37:10,951 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:10,951 [86] [DEBUG] [util.migrate.allocator] Total range: 4-15 securityworker stdout | 2025-09-26 08:37:10,952 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:10,952 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 4-15 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 15-19 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 15 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Total range: 4-15 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 4-15 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 11 securityworker stdout | 2025-09-26 08:37:10,952 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 11 securityworker stdout | 2025-09-26 08:37:10,953 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 6, 10]) securityworker stdout | 2025-09-26 08:37:10,953 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 6-10 by worker securityworker stdout | 2025-09-26 08:37:10,953 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 6-10 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 6-10 by worker securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 6-10 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 6-10 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Total range: 4-15 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stdout | 2025-09-26 08:37:10,953 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 6-10 securityworker stdout | 2025-09-26 08:37:10,954 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:37:10,954 [86] [DEBUG] [util.migrate.allocator] Total range: 4-15 securityworker stdout | 2025-09-26 08:37:10,954 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stdout | 2025-09-26 08:37:10,954 [86] [DEBUG] [util.migrate.allocator] Left range 6-10 securityworker stdout | 2025-09-26 08:37:10,954 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 10-15 securityworker stdout | 2025-09-26 08:37:10,954 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 11 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Left range 6-10 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 10-15 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 11 securityworker stdout | 2025-09-26 08:37:10,955 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 10, 14]) securityworker stdout | 2025-09-26 08:37:10,956 [86] [DEBUG] [util.migrate.allocator] Found 1 candidates, processing block start: 10 end: 14 by worker securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Found 1 candidates, processing block start: 10 end: 14 by worker securityworker stdout | 2025-09-26 08:37:10,956 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [13, 1, 0]) securityworker stdout | 2025-09-26 08:37:10,959 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 1, 0]) securityworker stdout | 2025-09-26 08:37:10,960 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['42a7e295-1848-4237-a4e3-c28b60bf18b0']) securityworker stdout | 2025-09-26 08:37:10,960 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:37:10,961 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:37:10,962 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e'} securityworker stdout | 2025-09-26 08:37:10,962 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,962 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,962 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,962 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:10,962 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,962 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:10,962 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:10,962 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:10,962 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:10,962 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:10,962 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:10,963 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,963 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,963 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,963 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:37:10,964 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:10,964 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:10,964 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,964 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,964 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:37:10,964 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083710Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:37:10,964 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083710Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | d9266c2642cf13e315f062dca963e408ec3c613d16f21f52b219bd080803def5 securityworker stdout | 2025-09-26 08:37:10,964 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | 8413a4e3d90a3131a17da7311797210db2de1ca986e84f87450a971c0c020a5c securityworker stdout | 2025-09-26 08:37:10,964 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,964 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:37:10,965 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:10,974 [257] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:10,975 [257] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:10,975 [257] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752', 'UploadId': '68d650b6d73ec60008f934c1', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89a6bb0>, 'ContentLength': 80956} gunicorn-registry stdout | 2025-09-26 08:37:10,975 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,975 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,975 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,975 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,975 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:10,975 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,975 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,975 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:10,975 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:10,975 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:10,976 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:10,976 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:10,977 [257] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,977 [257] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,977 [257] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:10,977 [257] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,977 [257] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,977 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752', 'query_string': {'uploadId': '68d650b6d73ec60008f934c1', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '80956', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'ZUMRUu/eOF+tV3SL6daJQw==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b89a6bb0>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752?uploadId=68d650b6d73ec60008f934c1&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752', 'UploadId': '68d650b6d73ec60008f934c1', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89a6bb0>, 'ContentLength': 80956}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:10,977 [251] [DEBUG] [app] Starting request: urn:request:7b4afd2e-bb2e-4e7f-9a50-5be776fb738d (/v2/testorg2/alpine/blobs/uploads/5be65c19-715c-42f3-a47f-18e8d45a3f35) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:10,977 [257] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:10,977 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:10,977 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,977 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,977 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:10,977 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752 gunicorn-registry stdout | partNumber=1&uploadId=68d650b6d73ec60008f934c1 gunicorn-registry stdout | content-length:80956 gunicorn-registry stdout | content-md5:ZUMRUu/eOF+tV3SL6daJQw== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083710Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:10,977 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083710Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 3455639920d7c7a25349b27773b387d258e0c0dae0ede18040d5cd53ecf0a171 gunicorn-registry stdout | 2025-09-26 08:37:10,977 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 839970b13459f43941a9487d649fdf5f42128f41963eee540afcd94391f23ba8 gunicorn-registry stdout | 2025-09-26 08:37:10,977 [257] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,978 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '5be65c19-715c-42f3-a47f-18e8d45a3f35', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:10,978 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:10,978 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:10,978 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:10,978 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:37:10,978 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a1/a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e HTTP/1.1" 200 241 gunicorn-registry stdout | 2025-09-26 08:37:10,979 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:10,979 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:10,979 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:10,979 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:10,979 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:10,979 [257] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. securityworker stdout | 2025-09-26 08:37:10,979 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l98za-27gus4-1io', 'x-amz-id-2': 'mg0l98za-27gus4-1io', 'ETag': '"517b0a2657a6f159dbb0c68ae54f1307-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:36:58 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:10 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:37:10,979 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:37:10,979 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,979 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:37:10,979 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:10,979 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l98za-27gus4-1io', 'HostId': 'mg0l98za-27gus4-1io', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l98za-27gus4-1io', 'x-amz-id-2': 'mg0l98za-27gus4-1io', 'etag': '"517b0a2657a6f159dbb0c68ae54f1307-1"', 'last-modified': 'Fri, 26 Sep 2025 08:36:58 GMT', 'content-type': 'application/octet-stream', 'content-length': '241', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:10 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 36, 58, tzinfo=tzutc()), 'ContentLength': 241, 'ETag': '"517b0a2657a6f159dbb0c68ae54f1307-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:10,980 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,980 [257] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:37:10,981 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,982 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) securityworker stdout | 2025-09-26 08:37:10,982 [86] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL ((SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1") UNION ALL (SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "manifestblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q2"))', [2, 'sha256:a1a305e7cc0c7bd645c6cc51bc78c1a1ce2b2644dd116b0ddb5db45ce3816b9e', 1, 2, 'sha256:642bd9a87afb8912e1cfc95bfbe82adceac1c1b2025f41880b6cb75b6c0c916e', 1, 2, 'sha256:aa3813f2d7da392c21ed6d5dd675704c4911f681566aac59635a9b18705e6c60', 1]) gunicorn-registry stdout | 2025-09-26 08:37:10,983 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:37:10,983 [86] [ERROR] [data.registry_model.registry_oci_model] Could not list manifest layers `13` securityworker stdout | Traceback (most recent call last): securityworker stdout | File "/quay-registry/data/registry_model/registry_oci_model.py", line 666, in list_manifest_layers securityworker stdout | layers = self._list_manifest_layers( securityworker stdout | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ securityworker stdout | File "/quay-registry/data/registry_model/registry_oci_model.py", line 1263, in _list_manifest_layers securityworker stdout | for layer in layers: securityworker stdout | ^^^^^^ securityworker stdout | File "/quay-registry/image/oci/manifest.py", line 308, in get_layers securityworker stdout | command=image_layer.history.command, securityworker stdout | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ securityworker stdout | AttributeError: 'NoneType' object has no attribute 'command' securityworker stdout | 2025-09-26 08:37:10,984 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,985 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) securityworker stdout | 2025-09-26 08:37:10,985 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,986 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) securityworker stdout | 2025-09-26 08:37:10,986 [86] [WARNING] [data.secscan_model.secscan_v4_model] Cannot index 3/alpine@sha256:cb1862fbe7951d7e19bf6012f18368a99531938db355638492374c14c50cd50d due to manifest being invalid (manifest has no layers) securityworker stdout | 2025-09-26 08:37:10,986 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE (("manifestsecuritystatus"."manifest_id" = %s) AND ("manifestsecuritystatus"."repository_id" = %s))', [13, 2]) gunicorn-registry stdout | 2025-09-26 08:37:10,987 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) securityworker stdout | 2025-09-26 08:37:10,987 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [13, 2, -2, '{}', datetime.datetime(2025, 9, 26, 8, 37, 10, 987220), 'none', 4, '{}']) gunicorn-registry stdout | 2025-09-26 08:37:10,988 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Marking id range as completed: 10-14 by worker securityworker stdout | 2025-09-26 08:37:10,989 [86] [DEBUG] [util.migrate.allocator] Marking id range as completed: 10-14 by worker securityworker stdout | 2025-09-26 08:37:10,989 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 10-14 securityworker stdout | 2025-09-26 08:37:10,989 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 6-10 securityworker stdout | 2025-09-26 08:37:10,989 [86] [DEBUG] [util.migrate.allocator] Already merged with block 6-10 securityworker stdout | 2025-09-26 08:37:10,989 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:37:10,989 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 6-14 securityworker stdout | 2025-09-26 08:37:10,989 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 10-14 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 6-10 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Already merged with block 6-10 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 6-14 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Total range: 4-15 gunicorn-registry stdout | 2025-09-26 08:37:10,989 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['5be65c19-715c-42f3-a47f-18e8d45a3f35', 1, 0]) securityworker stdout | 2025-09-26 08:37:10,989 [86] [DEBUG] [util.migrate.allocator] Total range: 4-15 securityworker stdout | 2025-09-26 08:37:10,989 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stdout | 2025-09-26 08:37:10,989 [86] [DEBUG] [util.migrate.allocator] Left range 6-14 securityworker stdout | 2025-09-26 08:37:10,989 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 14-15 securityworker stdout | 2025-09-26 08:37:10,989 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 14 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Left range 6-14 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 14-15 securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 14 gunicorn-registry stdout | 2025-09-26 08:37:10,990 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:10,990 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:10,990 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:37:10,990 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 14, 18]) securityworker stdout | 2025-09-26 08:37:10,991 [86] [DEBUG] [util.migrate.allocator] Found 1 candidates, processing block start: 14 end: 18 by worker securityworker stderr | 2025-09-26 08:37:10 [86] [DEBUG] [util.migrate.allocator] Found 1 candidates, processing block start: 14 end: 18 by worker securityworker stdout | 2025-09-26 08:37:10,991 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [14, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:10,991 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:10,992 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:10,992 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,992 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,992 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,992 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,992 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:10,992 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,992 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,992 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:10,992 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:10,992 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:10,992 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:10,992 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:10,992 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,992 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,992 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,992 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:10,992 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:10,993 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:10,993 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,993 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,993 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:10,993 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083710Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:10,993 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083710Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 994b8751a746ee77a9738f5344b492b0cb478fe0089601236dc54d5a13fdff93 gunicorn-registry stdout | 2025-09-26 08:37:10,993 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 25f5f9d48c8397566db560cd676ded883fdebe2a8630d7392d5aada89ec55181 gunicorn-registry stdout | 2025-09-26 08:37:10,993 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:10,993 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:10,993 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:37:10,993 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 1, 0]) securityworker stdout | 2025-09-26 08:37:10,994 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['ed59a6c3-28ec-4b97-b5f1-b79c436780b9']) securityworker stdout | 2025-09-26 08:37:10,995 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:37:10,995 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:37:10,996 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2'} securityworker stdout | 2025-09-26 08:37:10,996 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,996 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,996 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,996 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:10,996 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,996 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:10,996 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:10,996 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:10,996 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:10,996 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:10,996 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:10,996 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,996 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,996 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,996 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:37:10,996 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:10,996 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:10,996 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,996 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,997 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:37:10,997 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2 securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083710Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:37:10,997 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083710Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | 41fd3ec720ff9981cbd76d9d9dd4dd208a893fff924b8b967b9c650bf41c19db securityworker stdout | 2025-09-26 08:37:10,997 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | 49ed1201f534e70dc573b298d40952aa8ce4ae0540d6f2c2d691fad317ac2d62 securityworker stdout | 2025-09-26 08:37:10,997 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:10,997 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:37:10,997 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:11,001 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:11,001 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9902-2ohfx1-snf', 'x-amz-id-2': 'mg0l9902-2ohfx1-snf', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:10 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:11,001 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b82068d650b6d73ec60008f934c4' gunicorn-registry stdout | 2025-09-26 08:37:11,002 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,002 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:11,002 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,002 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9902-2ohfx1-snf', 'HostId': 'mg0l9902-2ohfx1-snf', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9902-2ohfx1-snf', 'x-amz-id-2': 'mg0l9902-2ohfx1-snf', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:10 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820', 'UploadId': '68d650b6d73ec60008f934c4'} gunicorn-registry stdout | 2025-09-26 08:37:11,002 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:11,010 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:11,010 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:11,011 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820', 'UploadId': '68d650b6d73ec60008f934c4', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b8847830>, 'ContentLength': 5682} gunicorn-registry stdout | 2025-09-26 08:37:11,011 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,011 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,011 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,011 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,011 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,011 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,011 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,011 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,011 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:11,011 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:11,011 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:11,011 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:11,011 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,011 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,011 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:11,011 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,011 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,011 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820', 'query_string': {'uploadId': '68d650b6d73ec60008f934c4', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '5682', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'Z9EdL024oUEIeYFxYMts3g==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b8847830>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820?uploadId=68d650b6d73ec60008f934c4&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820', 'UploadId': '68d650b6d73ec60008f934c4', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b8847830>, 'ContentLength': 5682}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:11,012 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,012 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,012 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,012 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,012 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:11,012 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820 gunicorn-registry stdout | partNumber=1&uploadId=68d650b6d73ec60008f934c4 gunicorn-registry stdout | content-length:5682 gunicorn-registry stdout | content-md5:Z9EdL024oUEIeYFxYMts3g== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083711Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:11,012 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083711Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 936f32cfc6c4a3e8c78215ca1187aa91112dd52845777d35da7e02603acd6948 gunicorn-registry stdout | 2025-09-26 08:37:11,012 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 64b08a16802361a873870425b24ece6ce386982b4ff167740713eedfb8a749a6 gunicorn-registry stdout | 2025-09-26 08:37:11,012 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,012 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:11,013 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:37:11,013 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2 HTTP/1.1" 200 584 securityworker stdout | 2025-09-26 08:37:11,013 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9907-2r4znv-5h5', 'x-amz-id-2': 'mg0l9907-2r4znv-5h5', 'ETag': '"d79d1533d445974a6fac572ac13d1f99-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:00 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '584', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:37:11,013 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:37:11,013 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,013 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:37:11,013 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,013 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. securityworker stdout | 2025-09-26 08:37:11,013 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9907-2r4znv-5h5', 'HostId': 'mg0l9907-2r4znv-5h5', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9907-2r4znv-5h5', 'x-amz-id-2': 'mg0l9907-2r4znv-5h5', 'etag': '"d79d1533d445974a6fac572ac13d1f99-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:00 GMT', 'content-type': 'application/octet-stream', 'content-length': '584', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, tzinfo=tzutc()), 'ContentLength': 584, 'ETag': '"d79d1533d445974a6fac572ac13d1f99-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:11,014 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. securityworker stdout | 2025-09-26 08:37:11,015 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4', 1, 0]) securityworker stdout | 2025-09-26 08:37:11,016 [86] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL (SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1")', [2, 'sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39', 1, 2, 'sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 1]) securityworker stdout | 2025-09-26 08:37:11,018 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['9b27eeae-fd96-44ac-bf5c-b11857d9934e']) securityworker stdout | 2025-09-26 08:37:11,019 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:37:11,020 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s)', [14]) securityworker stdout | 2025-09-26 08:37:11,021 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) securityworker stdout | 2025-09-26 08:37:11,022 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:37:11,023 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Indexing manifest [14] 3/alpine@sha256:d17c97e1ccf6490cb90fa17f6f021e404401d2656928631c73fd75ee711d87bd securityworker stdout | 2025-09-26 08:37:11,023 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,023 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,023 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,023 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:11,023 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,023 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:11,023 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:11,023 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:11,023 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:11,023 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:11,023 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:11,023 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:11,023 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,023 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:11,023 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:11,024 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876431 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a0/a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39 securityworker stdout | 2025-09-26 08:37:11,029 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ETXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE16RXNJbVY0Y0NJNk1UYzFPRGczTmpRek1Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE1DOWhNR0UwWW1WaFlURTVOakJpWW1Fek5UTXdOalprTmpjMFlXRXdaVE16TnpoaU9EVTJZakE1WlRaa00yWTNNRFJrTVRjMU5XUmhZVFZrTm1NeFpETTVQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAyUXpGT2JHWTVlVkJzYUd0c1pUWnNXbFp0YVRsTGEwNUhSWGNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRNeElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuTjl2Z1FnQWhWUFlBZDNONkFPWGdHZ3ZNem9BTVpoOVRjVTl0U1dZd1ktc01fNl9tYnZBbTBXaHlLZlJsRWdKV3lMeFlaLU9jVXFlRy1lbk5NZWR4MFl3VEpwNnBGbjRNT285blJ6Z29CVC1UT3pBX2xnam5HSElRX2NOYnd0WG1fZktxYy0wUHo5MmVxWEs0LWdPUnNCZ1pjdFhGMTVLX1RBTmh4NTlRYnpYNndIT0Z5eURPaWFKQmFBbWwyYmR2a0pNN0R5TEFRc24zMjVZNHdYNDBuQTFqdmRpMkVlR3RqM3JGUjdKWkZac1NWazVZdURzdElBMElIQjQzZzJ1SXVFUDJuT0NOM0dFdVVPNjZvMTJxZEFwZGJ4VVI4VF9FbnQ0U0dNV2RxVkJVbVpaQUJ4NjZRRWNYaVFwOVpIcDJ0cTRfXzBEOFphbGJ1Y0gwUjNlQVN3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a0/a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=6C1Nlf9yPlhkle6lZVmi9KkNGEw%3D&Expires=1758876431 securityworker stdout | 2025-09-26 08:37:11,030 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,030 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,030 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,030 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:11,030 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,030 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:11,030 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:11,030 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:11,030 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:11,030 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:11,030 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:11,030 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:11,030 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,030 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:11,031 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:11,031 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876431 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a0/a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39 securityworker stdout | 2025-09-26 08:37:11,036 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ETXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE16RXNJbVY0Y0NJNk1UYzFPRGczTmpRek1Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE1DOWhNR0UwWW1WaFlURTVOakJpWW1Fek5UTXdOalprTmpjMFlXRXdaVE16TnpoaU9EVTJZakE1WlRaa00yWTNNRFJrTVRjMU5XUmhZVFZrTm1NeFpETTVQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAyUXpGT2JHWTVlVkJzYUd0c1pUWnNXbFp0YVRsTGEwNUhSWGNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRNeElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuTjl2Z1FnQWhWUFlBZDNONkFPWGdHZ3ZNem9BTVpoOVRjVTl0U1dZd1ktc01fNl9tYnZBbTBXaHlLZlJsRWdKV3lMeFlaLU9jVXFlRy1lbk5NZWR4MFl3VEpwNnBGbjRNT285blJ6Z29CVC1UT3pBX2xnam5HSElRX2NOYnd0WG1fZktxYy0wUHo5MmVxWEs0LWdPUnNCZ1pjdFhGMTVLX1RBTmh4NTlRYnpYNndIT0Z5eURPaWFKQmFBbWwyYmR2a0pNN0R5TEFRc24zMjVZNHdYNDBuQTFqdmRpMkVlR3RqM3JGUjdKWkZac1NWazVZdURzdElBMElIQjQzZzJ1SXVFUDJuT0NOM0dFdVVPNjZvMTJxZEFwZGJ4VVI4VF9FbnQ0U0dNV2RxVkJVbVpaQUJ4NjZRRWNYaVFwOVpIcDJ0cTRfXzBEOFphbGJ1Y0gwUjNlQVN3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a0/a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=6C1Nlf9yPlhkle6lZVmi9KkNGEw%3D&Expires=1758876431 securityworker stdout | 2025-09-26 08:37:11,036 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,037 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,037 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,037 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:11,037 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,037 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:11,037 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:11,037 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:11,037 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:11,037 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:11,037 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:11,037 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:11,037 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,037 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:11,037 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:11,037 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876431 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:37:11,043 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ETXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE16RXNJbVY0Y0NJNk1UYzFPRGczTmpRek1Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFVVW5veE5tdEpaalI0T0ZRbE1rSlNUa1ExZURBelpGSlJaR0pWVVNVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME16RWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEubzYtbkgteFdHWUIwZWx1d0V4NHU5UFI2UVVmbElPUFhNOEdKYmE5UUpwRWVEandYcF9GNUFEM2lKTmduVUZEZW1ud19wUlFOWEhkeHl1c1hXRVBTZ01aRVBKSTJ0SnhkeFdTUVNnMTFTM1lpbE9NdWtKck5GRFR5M29KTWMzTEFRWDVNUDc1TW9sMFJJbDhaek5aQWFzQ1NKay1xV2ZDaVA1Z3dwYkU5X2U4NUk2MlJJSTNuWnpEOXVZV05vNzhkSUoyWlU3dE9VdU9RbDhfT0QtZkg1UmIxY0FVTzEybGE1aUhyMnFQZk9yaENJMGNhSUJRYUJMWEYwcUttWkRUVE5uVmJUcXhNOFl0b1daNW9IdXdQbmJoNGowU3Iyc0JXNS0yNlFGSmQyS3BfV1UwMVlWY3hTYlR2RVNLS3J4V3J1cHZ1YWtDM0pKdl9HSE9yamlUTEp3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=TRz16kIf4x8T%2BRND5x03dRQdbUQ%3D&Expires=1758876431 securityworker stdout | 2025-09-26 08:37:11,043 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,043 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,043 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,044 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:11,044 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,044 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:11,044 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:11,044 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:11,044 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:11,044 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:11,044 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:11,044 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:11,044 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,044 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:11,044 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:11,044 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876431 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 chunkcleanupworker stdout | 2025-09-26 08:37:11,045 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} securityworker stdout | 2025-09-26 08:37:11,050 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ETXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE16RXNJbVY0Y0NJNk1UYzFPRGczTmpRek1Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFVVW5veE5tdEpaalI0T0ZRbE1rSlNUa1ExZURBelpGSlJaR0pWVVNVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME16RWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEubzYtbkgteFdHWUIwZWx1d0V4NHU5UFI2UVVmbElPUFhNOEdKYmE5UUpwRWVEandYcF9GNUFEM2lKTmduVUZEZW1ud19wUlFOWEhkeHl1c1hXRVBTZ01aRVBKSTJ0SnhkeFdTUVNnMTFTM1lpbE9NdWtKck5GRFR5M29KTWMzTEFRWDVNUDc1TW9sMFJJbDhaek5aQWFzQ1NKay1xV2ZDaVA1Z3dwYkU5X2U4NUk2MlJJSTNuWnpEOXVZV05vNzhkSUoyWlU3dE9VdU9RbDhfT0QtZkg1UmIxY0FVTzEybGE1aUhyMnFQZk9yaENJMGNhSUJRYUJMWEYwcUttWkRUVE5uVmJUcXhNOFl0b1daNW9IdXdQbmJoNGowU3Iyc0JXNS0yNlFGSmQyS3BfV1UwMVlWY3hTYlR2RVNLS3J4V3J1cHZ1YWtDM0pKdl9HSE9yamlUTEp3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=TRz16kIf4x8T%2BRND5x03dRQdbUQ%3D&Expires=1758876431 securityworker stdout | 2025-09-26 08:37:11,051 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:37:11,051 [86] [DEBUG] [util.secscan.v4.api] POSTing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_report gunicorn-registry stdout | 2025-09-26 08:37:11,056 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752?uploadId=68d650b6d73ec60008f934c1&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:11,057 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l98zn-2finxk-mwu', 'x-amz-id-2': 'mg0l98zn-2finxk-mwu', 'ETag': '"65431152efde385fad57748be9d68943"', 'Date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:11,057 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:11,057 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,057 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:11,057 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,057 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l98zn-2finxk-mwu', 'HostId': 'mg0l98zn-2finxk-mwu', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l98zn-2finxk-mwu', 'x-amz-id-2': 'mg0l98zn-2finxk-mwu', 'etag': '"65431152efde385fad57748be9d68943"', 'date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"65431152efde385fad57748be9d68943"'} gunicorn-registry stdout | 2025-09-26 08:37:11,057 [257] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752', 'UploadId': '68d650b6d73ec60008f934c1', 'MultipartUpload': {'Parts': [{'ETag': '"65431152efde385fad57748be9d68943"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:11,057 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,057 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,058 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,058 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,058 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,058 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,058 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,058 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:11,058 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:11,058 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:11,058 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:11,058 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,058 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,058 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,058 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752', 'query_string': {'uploadId': '68d650b6d73ec60008f934c1'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"65431152efde385fad57748be9d68943"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752?uploadId=68d650b6d73ec60008f934c1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752', 'UploadId': '68d650b6d73ec60008f934c1', 'MultipartUpload': {'Parts': [{'ETag': '"65431152efde385fad57748be9d68943"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:11,058 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,058 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,058 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,058 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,059 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:11,059 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752 gunicorn-registry stdout | uploadId=68d650b6d73ec60008f934c1 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:f1f52c7cf375000729184a9724dce744464ec9f80a835c63f0ee426a586a1235 gunicorn-registry stdout | x-amz-date:20250926T083711Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | f1f52c7cf375000729184a9724dce744464ec9f80a835c63f0ee426a586a1235 gunicorn-registry stdout | 2025-09-26 08:37:11,059 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083711Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | d3ea6b6cb8847cd85f4f1375d6823956f3e3cde0cc57fc0b72fb4825abb97e6d gunicorn-registry stdout | 2025-09-26 08:37:11,059 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | b21ea2df05cb49f43e433360a2a6b664e89813da6f1cf9bb4fcc8a60012e8e85 gunicorn-registry stdout | 2025-09-26 08:37:11,059 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,059 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:11,059 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:11,073 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752?uploadId=68d650b6d73ec60008f934c1 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:11,074 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l991w-3rjweu-wgm', 'x-amz-id-2': 'mg0l991w-3rjweu-wgm', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:11,074 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752"b8bed06c9285656fc60f5ff4ccc399b9-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752?uploadId=68d650b6d73ec60008f934c1' gunicorn-registry stdout | 2025-09-26 08:37:11,074 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,074 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,074 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:11,074 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,074 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l991w-3rjweu-wgm', 'HostId': 'mg0l991w-3rjweu-wgm', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l991w-3rjweu-wgm', 'x-amz-id-2': 'mg0l991w-3rjweu-wgm', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752?uploadId=68d650b6d73ec60008f934c1', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752', 'ETag': '"b8bed06c9285656fc60f5ff4ccc399b9-1"'} gunicorn-registry stdout | 2025-09-26 08:37:11,074 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:11,075 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:11,075 [257] [DEBUG] [data.registry_model.blobuploader] Uploaded 80956 bytes to blob 96671777-09ab-4e60-ba62-9059c51fd4bc took 0.1643071174621582 seconds gunicorn-registry stdout | 2025-09-26 08:37:11,076 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['96671777-09ab-4e60-ba62-9059c51fd4bc', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,077 [257] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '96671777-09ab-4e60-ba62-9059c51fd4bc', 80956, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwNTNmYzZhNGY4ZWM5NmRkMTM1OCIsInJlbGF0aW9uc2hpcFR5cGUiOiJHRU5FUkFURURfRlJPTSJ9XX19YjIyMTwAAAAAAAAAAOAJAAAAAAAh/MnUBurRbtZxV/IdWhhmRtCJH1xw1mRTqwLN4vHqiJRiLg==', 9, '{"chunks": [["uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752", 0, 80956]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 37, 10, 854531), None, None, 49]) gunicorn-registry stdout | 2025-09-26 08:37:11,080 [257] [DEBUG] [app] Ending request: urn:request:44568d59-2b3f-4a15-9708-6ef6cb579913 (/v2/testorg2/alpine/blobs/uploads/96671777-09ab-4e60-ba62-9059c51fd4bc) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:44568d59-2b3f-4a15-9708-6ef6cb579913', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/96671777-09ab-4e60-ba62-9059c51fd4bc', 'path': '/v2/testorg2/alpine/blobs/uploads/96671777-09ab-4e60-ba62-9059c51fd4bc', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:11,080 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:11,080 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:11,080 [257] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:11 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/96671777-09ab-4e60-ba62-9059c51fd4bc HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:11 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/96671777-09ab-4e60-ba62-9059c51fd4bc HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.183 82734 0.182) gunicorn-registry stdout | 2025-09-26 08:37:11,095 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820?uploadId=68d650b6d73ec60008f934c4&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:11,095 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l990m-30ip6s-90c', 'x-amz-id-2': 'mg0l990m-30ip6s-90c', 'ETag': '"67d11d2f4db8a1410879817160cb6cde"', 'Date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:11,095 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:11,096 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,096 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:11,096 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,096 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l990m-30ip6s-90c', 'HostId': 'mg0l990m-30ip6s-90c', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l990m-30ip6s-90c', 'x-amz-id-2': 'mg0l990m-30ip6s-90c', 'etag': '"67d11d2f4db8a1410879817160cb6cde"', 'date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"67d11d2f4db8a1410879817160cb6cde"'} gunicorn-registry stdout | 2025-09-26 08:37:11,096 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820', 'UploadId': '68d650b6d73ec60008f934c4', 'MultipartUpload': {'Parts': [{'ETag': '"67d11d2f4db8a1410879817160cb6cde"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:11,096 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,096 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,096 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,096 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,096 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,096 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,096 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,096 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:11,096 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:11,096 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:11,096 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:11,097 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,097 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,097 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,097 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820', 'query_string': {'uploadId': '68d650b6d73ec60008f934c4'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"67d11d2f4db8a1410879817160cb6cde"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820?uploadId=68d650b6d73ec60008f934c4', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820', 'UploadId': '68d650b6d73ec60008f934c4', 'MultipartUpload': {'Parts': [{'ETag': '"67d11d2f4db8a1410879817160cb6cde"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:11,097 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,097 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,097 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,097 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,097 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:11,097 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820 gunicorn-registry stdout | uploadId=68d650b6d73ec60008f934c4 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:70ced4fb40b7181455b250e480f7e7deba3fcdda8bc6a2493615e29a1a488255 gunicorn-registry stdout | x-amz-date:20250926T083711Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 70ced4fb40b7181455b250e480f7e7deba3fcdda8bc6a2493615e29a1a488255 gunicorn-registry stdout | 2025-09-26 08:37:11,097 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083711Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | d3d63baca5153a1c53233548b22f5257b90ce50013993f7ea7cea44310111b73 gunicorn-registry stdout | 2025-09-26 08:37:11,098 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 078d39f5737b0db7ea7c37566ad88a0f5ddc1019f04f2249173143f07a0ecb28 gunicorn-registry stdout | 2025-09-26 08:37:11,098 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,098 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:11,098 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:11,113 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820?uploadId=68d650b6d73ec60008f934c4 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:11,113 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l992z-4enznw-p8j', 'x-amz-id-2': 'mg0l992z-4enznw-p8j', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:11,113 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820"c05ac9d45b31aed58105ee448bfb86a6-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820?uploadId=68d650b6d73ec60008f934c4' gunicorn-registry stdout | 2025-09-26 08:37:11,114 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,114 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,114 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:11,114 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,114 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l992z-4enznw-p8j', 'HostId': 'mg0l992z-4enznw-p8j', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l992z-4enznw-p8j', 'x-amz-id-2': 'mg0l992z-4enznw-p8j', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820?uploadId=68d650b6d73ec60008f934c4', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820', 'ETag': '"c05ac9d45b31aed58105ee448bfb86a6-1"'} gunicorn-registry stdout | 2025-09-26 08:37:11,114 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:11,115 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:11,115 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 5682 bytes to blob 5be65c19-715c-42f3-a47f-18e8d45a3f35 took 0.12486886978149414 seconds gunicorn-registry stdout | 2025-09-26 08:37:11,115 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['5be65c19-715c-42f3-a47f-18e8d45a3f35', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,117 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '5be65c19-715c-42f3-a47f-18e8d45a3f35', 5682, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwcHM6Ly9tb2J5cHJvamVjdC5vcmcvYnVpbGRraXRAdjEjaGVybWV0aWMiOnRydWV9fX05Njg5fV1dfX0sImh0dDIAAAAAAAAAALAAAAAAAACxlBWZnQDzruoMXQu785hHa71stsFv00bB5de2t/vvFpRiLg==', 9, '{"chunks": [["uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820", 0, 5682]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 37, 10, 929950), None, None, 50]) gunicorn-registry stdout | 2025-09-26 08:37:11,119 [251] [DEBUG] [app] Ending request: urn:request:7b4afd2e-bb2e-4e7f-9a50-5be776fb738d (/v2/testorg2/alpine/blobs/uploads/5be65c19-715c-42f3-a47f-18e8d45a3f35) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:7b4afd2e-bb2e-4e7f-9a50-5be776fb738d', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/5be65c19-715c-42f3-a47f-18e8d45a3f35', 'path': '/v2/testorg2/alpine/blobs/uploads/5be65c19-715c-42f3-a47f-18e8d45a3f35', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:11,119 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:11,119 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:11,119 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:11 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/5be65c19-715c-42f3-a47f-18e8d45a3f35 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:11 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/5be65c19-715c-42f3-a47f-18e8d45a3f35 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.144 7459 0.143) gunicorn-registry stdout | 2025-09-26 08:37:11,122 [251] [DEBUG] [app] Starting request: urn:request:20f5d72b-9da5-463f-9cf1-ed45197f4005 (/v2/testorg2/alpine/blobs/uploads/96671777-09ab-4e60-ba62-9059c51fd4bc) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:11,122 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '96671777-09ab-4e60-ba62-9059c51fd4bc', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:11,122 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:11,122 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:11,123 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:11,123 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:11,123 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:11,123 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:11,123 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:11,124 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,125 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,126 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,127 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,128 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,129 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,129 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,130 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:11,131 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['96671777-09ab-4e60-ba62-9059c51fd4bc', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,132 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:11,132 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:11,132 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:11,133 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:11,133 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f6d4fec8-becc-4229-9261-8ef59c56a733', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:11,133 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,133 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,133 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,133 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,133 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,133 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,133 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,133 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,133 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:11,133 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:11,133 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:11,134 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:11,134 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,134 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,134 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,134 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/f6d4fec8-becc-4229-9261-8ef59c56a733?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f6d4fec8-becc-4229-9261-8ef59c56a733', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f6d4fec8-becc-4229-9261-8ef59c56a733?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f6d4fec8-becc-4229-9261-8ef59c56a733', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:11,134 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,134 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,134 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,134 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,134 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:11,134 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f6d4fec8-becc-4229-9261-8ef59c56a733 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083711Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:11,134 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083711Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 16df518bdaa8c5e08b9ce32ac9282d044aa1bdf6fb6e5e0bd130c83007ecb957 gunicorn-registry stdout | 2025-09-26 08:37:11,134 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 96876a4cd3edcc1adfe3cbcfe474cd2d39dfd4638c3ceac14c40e9d48bf53b6e gunicorn-registry stdout | 2025-09-26 08:37:11,134 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,134 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:11,135 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:11,140 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f6d4fec8-becc-4229-9261-8ef59c56a733?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:11,140 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9940-50ks2c-9c7', 'x-amz-id-2': 'mg0l9940-50ks2c-9c7', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:11,140 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/f6d4fec8-becc-4229-9261-8ef59c56a73368d650b7d73ec60008f934cd' gunicorn-registry stdout | 2025-09-26 08:37:11,140 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,141 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:11,141 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,141 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9940-50ks2c-9c7', 'HostId': 'mg0l9940-50ks2c-9c7', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9940-50ks2c-9c7', 'x-amz-id-2': 'mg0l9940-50ks2c-9c7', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f6d4fec8-becc-4229-9261-8ef59c56a733', 'UploadId': '68d650b7d73ec60008f934cd'} gunicorn-registry stdout | 2025-09-26 08:37:11,141 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:11,141 [251] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f6d4fec8-becc-4229-9261-8ef59c56a733', 'UploadId': '68d650b7d73ec60008f934cd'} gunicorn-registry stdout | 2025-09-26 08:37:11,141 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,141 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,142 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,142 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,142 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,142 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,142 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:11,142 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:11,142 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:11,142 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:11,142 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,142 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,142 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,142 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/f6d4fec8-becc-4229-9261-8ef59c56a733', 'query_string': {'uploadId': '68d650b7d73ec60008f934cd'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f6d4fec8-becc-4229-9261-8ef59c56a733', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f6d4fec8-becc-4229-9261-8ef59c56a733?uploadId=68d650b7d73ec60008f934cd', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f6d4fec8-becc-4229-9261-8ef59c56a733', 'UploadId': '68d650b7d73ec60008f934cd'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:11,142 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,142 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,142 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,142 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,142 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:11,142 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f6d4fec8-becc-4229-9261-8ef59c56a733 gunicorn-registry stdout | uploadId=68d650b7d73ec60008f934cd gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083711Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:11,143 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083711Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 886113cebb5d5c7ef7c9e48e2d8735323323e63de234f093827370c1ea47adbd gunicorn-registry stdout | 2025-09-26 08:37:11,143 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 5f9dfd73c14f0104df6ac635e22bab05f3fed8fc4fb7e57d53058643b7cd78df gunicorn-registry stdout | 2025-09-26 08:37:11,143 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,143 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:11,143 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:11,150 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f6d4fec8-becc-4229-9261-8ef59c56a733?uploadId=68d650b7d73ec60008f934cd HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:37:11,151 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9948-55nnlh-zlq', 'x-amz-id-2': 'mg0l9948-55nnlh-zlq', 'Date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:11,151 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:11,151 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,151 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:11,151 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,151 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9948-55nnlh-zlq', 'HostId': 'mg0l9948-55nnlh-zlq', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9948-55nnlh-zlq', 'x-amz-id-2': 'mg0l9948-55nnlh-zlq', 'date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:37:11,151 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 96671777-09ab-4e60-ba62-9059c51fd4bc took 0.018959760665893555 seconds gunicorn-registry stdout | 2025-09-26 08:37:11,151 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['96671777-09ab-4e60-ba62-9059c51fd4bc', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,152 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '96671777-09ab-4e60-ba62-9059c51fd4bc', 80956, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwNTNmYzZhNGY4ZWM5NmRkMTM1OCIsInJlbGF0aW9uc2hpcFR5cGUiOiJHRU5FUkFURURfRlJPTSJ9XX19YjIyMTwAAAAAAAAAAOAJAAAAAAAh/MnUBurRbtZxV/IdWhhmRtCJH1xw1mRTqwLN4vHqiJRiLg==', 9, '{"chunks": [["uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752", 0, 80956]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 37, 10, 854531), None, None, 49]) gunicorn-registry stdout | 2025-09-26 08:37:11,154 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:11,154 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:11,154 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:11,155 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:11,155 [251] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/5b/5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4'} gunicorn-registry stdout | 2025-09-26 08:37:11,155 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,155 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,155 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,155 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,155 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,155 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,155 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,155 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:11,156 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:11,156 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:11,156 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:11,156 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,156 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,156 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,156 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/5b/5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5b/5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5b/5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/5b/5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:11,156 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,156 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,156 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,157 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,157 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:11,157 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5b/5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083711Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:11,157 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083711Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 90d241ddf2250c831b61b7e69f0292ea1fb41eae6776fc5b7381ab163653d9e7 gunicorn-registry stdout | 2025-09-26 08:37:11,157 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | d1327780fcd756e8b49949937f03e6ef6388b9c94647d3f048fcc2557fe67460 gunicorn-registry stdout | 2025-09-26 08:37:11,157 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,157 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:11,157 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:11,159 [251] [DEBUG] [app] Starting request: urn:request:31fef46b-78bf-4fad-a305-de66d079672f (/v2/testorg2/alpine/blobs/uploads/5be65c19-715c-42f3-a47f-18e8d45a3f35) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:11,159 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '5be65c19-715c-42f3-a47f-18e8d45a3f35', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:11,159 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:11,159 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:11,160 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:11,160 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:11,160 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:11,160 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:11,160 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:11,161 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,162 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,163 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,164 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,165 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,166 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,167 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,168 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:11,169 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['5be65c19-715c-42f3-a47f-18e8d45a3f35', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,170 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:11,170 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:11,170 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:11,171 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:11,171 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f13ddfaf-9407-4da8-b785-ff13edcdc4f1', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:11,171 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,171 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,171 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,171 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,171 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,171 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,171 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,171 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,171 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:11,172 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:11,172 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:11,172 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:11,172 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,172 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,172 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,172 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/f13ddfaf-9407-4da8-b785-ff13edcdc4f1?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f13ddfaf-9407-4da8-b785-ff13edcdc4f1', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f13ddfaf-9407-4da8-b785-ff13edcdc4f1?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f13ddfaf-9407-4da8-b785-ff13edcdc4f1', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:11,172 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,172 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,172 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,172 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,172 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:11,172 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f13ddfaf-9407-4da8-b785-ff13edcdc4f1 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083711Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:11,172 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083711Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 63f67bcf9deb409ba5766eb7ddac5d7bd7cbc890a31cc0d28635f98a08e8e0bd gunicorn-registry stdout | 2025-09-26 08:37:11,172 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 7bbfe1c13cd1de82c11f8fa91f27c82ee984f26d551e0671036505a2de64b097 gunicorn-registry stdout | 2025-09-26 08:37:11,172 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,173 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:11,173 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:11,173 [251] [DEBUG] [urllib3.connectionpool] Starting new HTTPS connection (2): s3.openshift-storage.svc.cluster.local:443 gunicorn-registry stdout | 2025-09-26 08:37:11,173 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5b/5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:37:11,174 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l994m-5dw7ve-17b6', 'x-amz-id-2': 'mg0l994m-5dw7ve-17b6', 'Content-Type': 'application/xml', 'Content-Length': '339', 'Date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:11,174 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:11,174 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,174 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:11,174 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,174 [251] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:37:11,174 [251] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:37:11,174 [251] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/5b/5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4 gunicorn-registry stdout | 2025-09-26 08:37:11,174 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:11,174 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:11,174 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:11,174 [251] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:37:11,175 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,175 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,175 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,175 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,175 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,175 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,175 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,175 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:11,175 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:11,175 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:11,175 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:11,175 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,175 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,175 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,175 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:11,175 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,175 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,175 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,175 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,175 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,176 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:11,176 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083711Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:11,176 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083711Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 6b1f19de38516def22822708976765b4b63c87c349d4c174d14976c4376cc0e8 gunicorn-registry stdout | 2025-09-26 08:37:11,176 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 36e3bfd21d8bfaba568ea7200f7e034fa931942617c405dc3acade87efec431c gunicorn-registry stdout | 2025-09-26 08:37:11,176 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,176 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,176 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:11,176 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:11,194 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:11,194 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9955-5p93sr-1q8', 'x-amz-id-2': 'mg0l9955-5p93sr-1q8', 'ETag': '"b8bed06c9285656fc60f5ff4ccc399b9-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:11 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '80956', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:11,194 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:11,195 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,195 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:11,195 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,195 [251] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/5b/5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:37:11,195 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:11,195 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/5b/5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:11,195 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/5b/5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:11,195 [251] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/5b/5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/5b/5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4', 'extra_args': {}, 'callbacks': [], 'size': 80956} gunicorn-registry stdout | 2025-09-26 08:37:11,195 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,195 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,195 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,195 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,195 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,195 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,195 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,196 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,196 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,196 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,196 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:11,197 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:11,197 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:11,197 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:11,197 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,197 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,197 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,197 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/5b/5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5b/5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5b/5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/5b/5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:11,197 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,197 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,197 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,197 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,197 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,197 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:11,197 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5b/5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/fa6af89b-5dee-4e48-aee6-7eb172c25752 gunicorn-registry stdout | x-amz-date:20250926T083711Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:11,197 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083711Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 3f5d2615e8175d20d0b286f159b4c06f7d3c28ab7dbd60a39b7ee3f29e926284 gunicorn-registry stdout | 2025-09-26 08:37:11,197 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 1db4c0e4cf7c7fc5c4037fa765fd7961f502888d7c50b5c5573dd61e8e759f59 gunicorn-registry stdout | 2025-09-26 08:37:11,197 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,198 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,198 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:11,198 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:11,198 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:11,204 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f13ddfaf-9407-4da8-b785-ff13edcdc4f1?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:11,204 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l995r-62hy74-17un', 'x-amz-id-2': 'mg0l995r-62hy74-17un', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:11,204 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/f13ddfaf-9407-4da8-b785-ff13edcdc4f168d650b7d73ec60008f934ce' gunicorn-registry stdout | 2025-09-26 08:37:11,204 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,204 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:11,204 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,204 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l995r-62hy74-17un', 'HostId': 'mg0l995r-62hy74-17un', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l995r-62hy74-17un', 'x-amz-id-2': 'mg0l995r-62hy74-17un', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f13ddfaf-9407-4da8-b785-ff13edcdc4f1', 'UploadId': '68d650b7d73ec60008f934ce'} gunicorn-registry stdout | 2025-09-26 08:37:11,204 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:11,205 [251] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f13ddfaf-9407-4da8-b785-ff13edcdc4f1', 'UploadId': '68d650b7d73ec60008f934ce'} gunicorn-registry stdout | 2025-09-26 08:37:11,205 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,205 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,205 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,205 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,205 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,205 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,205 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:11,205 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:11,205 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:11,205 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:11,205 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,205 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,206 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,206 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/f13ddfaf-9407-4da8-b785-ff13edcdc4f1', 'query_string': {'uploadId': '68d650b7d73ec60008f934ce'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f13ddfaf-9407-4da8-b785-ff13edcdc4f1', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f13ddfaf-9407-4da8-b785-ff13edcdc4f1?uploadId=68d650b7d73ec60008f934ce', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/f13ddfaf-9407-4da8-b785-ff13edcdc4f1', 'UploadId': '68d650b7d73ec60008f934ce'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:11,206 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,206 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,206 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,206 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,206 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:11,206 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f13ddfaf-9407-4da8-b785-ff13edcdc4f1 gunicorn-registry stdout | uploadId=68d650b7d73ec60008f934ce gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083711Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:11,206 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083711Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 402e365c3fbfed83c9f9d8bd785f50c67f3d960c882f3c673ab1d7d795aae056 gunicorn-registry stdout | 2025-09-26 08:37:11,206 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 0f374fd86121a98adfad3ce1827ce0189642f26b7c7ed6c0cd10854e7d51da5b gunicorn-registry stdout | 2025-09-26 08:37:11,206 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,206 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:11,206 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:11,213 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/f13ddfaf-9407-4da8-b785-ff13edcdc4f1?uploadId=68d650b7d73ec60008f934ce HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:37:11,213 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l995z-678hq4-m6a', 'x-amz-id-2': 'mg0l995z-678hq4-m6a', 'Date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:11,213 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:11,213 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,213 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:11,213 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,213 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l995z-678hq4-m6a', 'HostId': 'mg0l995z-678hq4-m6a', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l995z-678hq4-m6a', 'x-amz-id-2': 'mg0l995z-678hq4-m6a', 'date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:37:11,213 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 5be65c19-715c-42f3-a47f-18e8d45a3f35 took 0.04323863983154297 seconds gunicorn-registry stdout | 2025-09-26 08:37:11,214 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['5be65c19-715c-42f3-a47f-18e8d45a3f35', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,215 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '5be65c19-715c-42f3-a47f-18e8d45a3f35', 5682, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwcHM6Ly9tb2J5cHJvamVjdC5vcmcvYnVpbGRraXRAdjEjaGVybWV0aWMiOnRydWV9fX05Njg5fV1dfX0sImh0dDIAAAAAAAAAALAAAAAAAACxlBWZnQDzruoMXQu785hHa71stsFv00bB5de2t/vvFpRiLg==', 9, '{"chunks": [["uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820", 0, 5682]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 37, 10, 929950), None, None, 50]) gunicorn-registry stdout | 2025-09-26 08:37:11,216 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:11,217 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:11,217 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:11,218 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:11,218 [251] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/ff/ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2'} gunicorn-registry stdout | 2025-09-26 08:37:11,218 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,219 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,219 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,219 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,219 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,219 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,219 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,219 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:11,219 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:11,219 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:11,219 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:11,219 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,219 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,219 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,219 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/ff/ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ff/ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ff/ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/ff/ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:11,219 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,219 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,219 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,219 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,220 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:11,220 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ff/ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083711Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:11,220 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083711Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 066d64223fe1f796f8addfe6991159aa18569e6bb6c6a588ffbf5a3fbcbff397 gunicorn-registry stdout | 2025-09-26 08:37:11,220 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | d58cdde57b3273d083b55ee88fa6e0a5d7d84026f4a6749d80b95f3966f717f4 gunicorn-registry stdout | 2025-09-26 08:37:11,220 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,220 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:11,220 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:11,224 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ff/ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:37:11,224 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l996d-6f9olt-12qf', 'x-amz-id-2': 'mg0l996d-6f9olt-12qf', 'Content-Type': 'application/xml', 'Content-Length': '339', 'Date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:11,224 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:11,225 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,225 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:11,225 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,225 [251] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:37:11,225 [251] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:37:11,225 [251] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/ff/ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2 gunicorn-registry stdout | 2025-09-26 08:37:11,225 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:11,225 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:11,225 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:11,225 [251] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:37:11,225 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,225 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,225 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,225 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,226 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,226 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,226 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,226 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:11,226 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:11,226 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:11,226 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:11,226 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,226 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,226 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,226 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:11,226 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,226 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,226 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,226 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,226 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,226 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:11,226 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083711Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:11,226 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083711Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 55517bf68defaaadc582be416efbc538168678694bf2690687b0b39c789bd892 gunicorn-registry stdout | 2025-09-26 08:37:11,227 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 58e628331599dfa085b5e4f58b3c2a855eae4c41236ec52389acce969bb47a15 gunicorn-registry stdout | 2025-09-26 08:37:11,227 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,227 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,227 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:11,227 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:11,227 [251] [DEBUG] [urllib3.connectionpool] Starting new HTTPS connection (2): s3.openshift-storage.svc.cluster.local:443 gunicorn-registry stdout | 2025-09-26 08:37:11,228 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5b/5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:37:11,228 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l995t-63bg2f-1ahq', 'x-amz-id-2': 'mg0l995t-63bg2f-1ahq', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:11,228 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:37:11.000Z"b8bed06c9285656fc60f5ff4ccc399b9-1"' gunicorn-registry stdout | 2025-09-26 08:37:11,228 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,228 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,228 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:11,228 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,228 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:11,229 [251] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 96671777-09ab-4e60-ba62-9059c51fd4bc with digest sha256:5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4 took 0.05496025085449219 seconds gunicorn-registry stdout | 2025-09-26 08:37:11,229 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['96671777-09ab-4e60-ba62-9059c51fd4bc', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,230 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,231 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['ea361aae-9458-48ea-82ae-1efe04ba3a81', 80956, None, True, True, 'sha256:5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4']) gunicorn-registry stdout | 2025-09-26 08:37:11,232 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [50, 9]) gunicorn-registry stdout | 2025-09-26 08:37:11,233 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,233 [251] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [3, 50, datetime.datetime(2025, 9, 26, 8, 37, 11, 233681), datetime.datetime(2025, 9, 26, 9, 37, 11, 233667)]) gunicorn-registry stdout | 2025-09-26 08:37:11,234 [251] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [49]) gunicorn-registry stdout | 2025-09-26 08:37:11,236 [251] [DEBUG] [app] Ending request: urn:request:20f5d72b-9da5-463f-9cf1-ed45197f4005 (/v2/testorg2/alpine/blobs/uploads/96671777-09ab-4e60-ba62-9059c51fd4bc) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:20f5d72b-9da5-463f-9cf1-ed45197f4005', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/96671777-09ab-4e60-ba62-9059c51fd4bc?digest=sha256:5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4', 'path': '/v2/testorg2/alpine/blobs/uploads/96671777-09ab-4e60-ba62-9059c51fd4bc', 'parameters': {'digest': 'sha256:5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:11,236 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:11,236 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:11 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/96671777-09ab-4e60-ba62-9059c51fd4bc?digest=sha256%3A5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.115 1853 0.115) gunicorn-registry stdout | 2025-09-26 08:37:11,237 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:11 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/96671777-09ab-4e60-ba62-9059c51fd4bc?digest=sha256%3A5b9b2fb79d66a16d883863a72a071d210961507c0306497e00cc7aa71dcf5ed4 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" gunicorn-registry stdout | 2025-09-26 08:37:11,260 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:11,260 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l997d-70n6ao-12gx', 'x-amz-id-2': 'mg0l997d-70n6ao-12gx', 'ETag': '"c05ac9d45b31aed58105ee448bfb86a6-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:11 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '5682', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:11,260 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:11,261 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,261 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:11,261 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,261 [251] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/ff/ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:37:11,261 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:11,261 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/ff/ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:11,261 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/ff/ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:11,261 [251] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/ff/ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/ff/ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2', 'extra_args': {}, 'callbacks': [], 'size': 5682} gunicorn-registry stdout | 2025-09-26 08:37:11,261 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,261 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,261 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,261 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,261 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,261 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,261 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,262 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,262 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,262 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,262 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:11,262 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:11,262 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:11,262 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:11,262 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,262 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,262 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,262 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/ff/ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ff/ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ff/ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/ff/ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:11,262 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,262 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,262 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,262 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,262 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,263 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:11,263 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ff/ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/631cc2e8-bef5-4def-80f6-224ffbb1b820 gunicorn-registry stdout | x-amz-date:20250926T083711Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:11,263 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083711Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | dd85c702504d9fcfdfd6a7c310a142a30b10dd2b5108761a3e25596e3e5ffca9 gunicorn-registry stdout | 2025-09-26 08:37:11,263 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | f58ae862ae728fe39601a9fb1f865760e5d9664365016e95cc015116c176b1d7 gunicorn-registry stdout | 2025-09-26 08:37:11,263 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,263 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,263 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:11,263 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:11,263 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:11,288 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ff/ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:37:11,289 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l997k-755jfo-9nm', 'x-amz-id-2': 'mg0l997k-755jfo-9nm', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:11,289 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:37:11.000Z"c05ac9d45b31aed58105ee448bfb86a6-1"' gunicorn-registry stdout | 2025-09-26 08:37:11,289 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,289 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:11,289 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:11,289 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:11,289 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:11,290 [251] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 5be65c19-715c-42f3-a47f-18e8d45a3f35 with digest sha256:ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2 took 0.06480646133422852 seconds gunicorn-registry stdout | 2025-09-26 08:37:11,290 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['5be65c19-715c-42f3-a47f-18e8d45a3f35', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,291 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,292 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['a2d34ee1-40b2-4e6e-bd71-6acc528050af', 5682, None, True, True, 'sha256:ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2']) gunicorn-registry stdout | 2025-09-26 08:37:11,292 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [51, 9]) gunicorn-registry stdout | 2025-09-26 08:37:11,293 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:11,293 [251] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [3, 51, datetime.datetime(2025, 9, 26, 8, 37, 11, 293622), datetime.datetime(2025, 9, 26, 9, 37, 11, 293609)]) gunicorn-registry stdout | 2025-09-26 08:37:11,294 [251] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [50]) gunicorn-registry stdout | 2025-09-26 08:37:11,295 [251] [DEBUG] [app] Ending request: urn:request:31fef46b-78bf-4fad-a305-de66d079672f (/v2/testorg2/alpine/blobs/uploads/5be65c19-715c-42f3-a47f-18e8d45a3f35) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:31fef46b-78bf-4fad-a305-de66d079672f', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/5be65c19-715c-42f3-a47f-18e8d45a3f35?digest=sha256:ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2', 'path': '/v2/testorg2/alpine/blobs/uploads/5be65c19-715c-42f3-a47f-18e8d45a3f35', 'parameters': {'digest': 'sha256:ff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:11,296 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:11,296 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:11 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/5be65c19-715c-42f3-a47f-18e8d45a3f35?digest=sha256%3Aff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.137 1853 0.138) gunicorn-registry stdout | 2025-09-26 08:37:11,296 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:11 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/5be65c19-715c-42f3-a47f-18e8d45a3f35?digest=sha256%3Aff5e5806f15b500184a129a78dd91a3ae46db62f79667f312262075b676faae2 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" securityworker stdout | 2025-09-26 08:37:11,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:37:11,685 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:37.683505+00:00 (in 25.997946 seconds) securityworker stdout | 2025-09-26 08:37:11,685 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:41 GMT)" (scheduled at 2025-09-26 08:37:11.684816+00:00) securityworker stdout | 2025-09-26 08:37:11,686 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:37:11,686 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:37:11,688 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:37:11,690 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:37:11,697 [86] [DEBUG] [util.migrate.allocator] Total range: 1-20 securityworker stderr | 2025-09-26 08:37:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-20 securityworker stderr | 2025-09-26 08:37:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:37:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-20 securityworker stdout | 2025-09-26 08:37:11,697 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:11,697 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-20 securityworker stdout | 2025-09-26 08:37:11,697 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:37:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:37:11,698 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 20]) securityworker stderr | 2025-09-26 08:37:11 [86] [DEBUG] [util.migrate.allocator] Found 2 candidates, processing block start: 1 end: 20 by worker securityworker stdout | 2025-09-26 08:37:11,700 [86] [DEBUG] [util.migrate.allocator] Found 2 candidates, processing block start: 1 end: 20 by worker securityworker stdout | 2025-09-26 08:37:11,700 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [14, 1, 0]) securityworker stdout | 2025-09-26 08:37:11,702 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [2, 'sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 1, 0]) securityworker stdout | 2025-09-26 08:37:11,704 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['ed59a6c3-28ec-4b97-b5f1-b79c436780b9']) securityworker stdout | 2025-09-26 08:37:11,705 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:37:11,706 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:37:11,706 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2'} securityworker stdout | 2025-09-26 08:37:11,706 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,706 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,706 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,706 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:11,706 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,706 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:11,706 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:11,706 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:11,706 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:11,706 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:11,706 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:11,707 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,707 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,707 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,707 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:37:11,707 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:11,707 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:11,707 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,707 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,708 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:37:11,708 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2 securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083711Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:37:11,708 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083711Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | 294beb3413cd7b79bce1718bb6b8147527dfd894b2a2d8679ba16d017016e8f7 securityworker stdout | 2025-09-26 08:37:11,708 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | 77dd080f7e837525c6186d487743b262c0e98e87ddaa7bdca387fe98d02325dc securityworker stdout | 2025-09-26 08:37:11,708 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,708 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:37:11,708 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:37:11,724 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2 HTTP/1.1" 200 584 securityworker stdout | 2025-09-26 08:37:11,724 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l99jx-ehugl4-13d1', 'x-amz-id-2': 'mg0l99jx-ehugl4-13d1', 'ETag': '"d79d1533d445974a6fac572ac13d1f99-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:00 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '584', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:37:11,724 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:37:11,724 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,724 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:37:11,724 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:11,724 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l99jx-ehugl4-13d1', 'HostId': 'mg0l99jx-ehugl4-13d1', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l99jx-ehugl4-13d1', 'x-amz-id-2': 'mg0l99jx-ehugl4-13d1', 'etag': '"d79d1533d445974a6fac572ac13d1f99-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:00 GMT', 'content-type': 'application/octet-stream', 'content-length': '584', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:11 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, tzinfo=tzutc()), 'ContentLength': 584, 'ETag': '"d79d1533d445974a6fac572ac13d1f99-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } securityworker stdout | 2025-09-26 08:37:11,726 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4', 1, 0]) securityworker stdout | 2025-09-26 08:37:11,727 [86] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL (SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1")', [2, 'sha256:a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39', 1, 2, 'sha256:3139e75da5d8de02f503007200b5d1b3f8770caefa8b6a4c79adcf94832b4cc2', 1]) securityworker stdout | 2025-09-26 08:37:11,729 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['9b27eeae-fd96-44ac-bf5c-b11857d9934e']) securityworker stdout | 2025-09-26 08:37:11,730 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:37:11,731 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s)', [14]) securityworker stdout | 2025-09-26 08:37:11,732 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) securityworker stdout | 2025-09-26 08:37:11,734 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:37:11,735 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Indexing manifest [14] 3/alpine@sha256:d17c97e1ccf6490cb90fa17f6f021e404401d2656928631c73fd75ee711d87bd securityworker stdout | 2025-09-26 08:37:11,735 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,735 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,735 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,735 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:11,735 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,735 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:11,735 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:11,735 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:11,735 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:11,735 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:11,735 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:11,735 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:11,735 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,735 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:11,735 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:11,735 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876431 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a0/a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39 securityworker stdout | 2025-09-26 08:37:11,740 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ETXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE16RXNJbVY0Y0NJNk1UYzFPRGczTmpRek1Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE1DOWhNR0UwWW1WaFlURTVOakJpWW1Fek5UTXdOalprTmpjMFlXRXdaVE16TnpoaU9EVTJZakE1WlRaa00yWTNNRFJrTVRjMU5XUmhZVFZrTm1NeFpETTVQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAyUXpGT2JHWTVlVkJzYUd0c1pUWnNXbFp0YVRsTGEwNUhSWGNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRNeElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuTjl2Z1FnQWhWUFlBZDNONkFPWGdHZ3ZNem9BTVpoOVRjVTl0U1dZd1ktc01fNl9tYnZBbTBXaHlLZlJsRWdKV3lMeFlaLU9jVXFlRy1lbk5NZWR4MFl3VEpwNnBGbjRNT285blJ6Z29CVC1UT3pBX2xnam5HSElRX2NOYnd0WG1fZktxYy0wUHo5MmVxWEs0LWdPUnNCZ1pjdFhGMTVLX1RBTmh4NTlRYnpYNndIT0Z5eURPaWFKQmFBbWwyYmR2a0pNN0R5TEFRc24zMjVZNHdYNDBuQTFqdmRpMkVlR3RqM3JGUjdKWkZac1NWazVZdURzdElBMElIQjQzZzJ1SXVFUDJuT0NOM0dFdVVPNjZvMTJxZEFwZGJ4VVI4VF9FbnQ0U0dNV2RxVkJVbVpaQUJ4NjZRRWNYaVFwOVpIcDJ0cTRfXzBEOFphbGJ1Y0gwUjNlQVN3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a0/a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=6C1Nlf9yPlhkle6lZVmi9KkNGEw%3D&Expires=1758876431 securityworker stdout | 2025-09-26 08:37:11,741 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,741 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,741 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,741 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:11,741 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,741 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:11,741 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:11,741 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:11,741 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:11,741 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:11,741 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:11,741 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:11,741 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,742 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:11,742 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:11,742 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876431 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a0/a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39 securityworker stdout | 2025-09-26 08:37:11,747 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ETXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE16RXNJbVY0Y0NJNk1UYzFPRGczTmpRek1Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE1DOWhNR0UwWW1WaFlURTVOakJpWW1Fek5UTXdOalprTmpjMFlXRXdaVE16TnpoaU9EVTJZakE1WlRaa00yWTNNRFJrTVRjMU5XUmhZVFZrTm1NeFpETTVQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDAyUXpGT2JHWTVlVkJzYUd0c1pUWnNXbFp0YVRsTGEwNUhSWGNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRNeElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuTjl2Z1FnQWhWUFlBZDNONkFPWGdHZ3ZNem9BTVpoOVRjVTl0U1dZd1ktc01fNl9tYnZBbTBXaHlLZlJsRWdKV3lMeFlaLU9jVXFlRy1lbk5NZWR4MFl3VEpwNnBGbjRNT285blJ6Z29CVC1UT3pBX2xnam5HSElRX2NOYnd0WG1fZktxYy0wUHo5MmVxWEs0LWdPUnNCZ1pjdFhGMTVLX1RBTmh4NTlRYnpYNndIT0Z5eURPaWFKQmFBbWwyYmR2a0pNN0R5TEFRc24zMjVZNHdYNDBuQTFqdmRpMkVlR3RqM3JGUjdKWkZac1NWazVZdURzdElBMElIQjQzZzJ1SXVFUDJuT0NOM0dFdVVPNjZvMTJxZEFwZGJ4VVI4VF9FbnQ0U0dNV2RxVkJVbVpaQUJ4NjZRRWNYaVFwOVpIcDJ0cTRfXzBEOFphbGJ1Y0gwUjNlQVN3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a0/a0a4beaa1960bba353066d674aa0e3378b856b09e6d3f704d1755daa5d6c1d39?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=6C1Nlf9yPlhkle6lZVmi9KkNGEw%3D&Expires=1758876431 securityworker stdout | 2025-09-26 08:37:11,748 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,748 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,748 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,748 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:11,748 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,748 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:11,748 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:11,748 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:11,748 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:11,748 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:11,748 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:11,748 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:11,748 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,748 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:11,748 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:11,748 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876431 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:37:11,754 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ETXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE16RXNJbVY0Y0NJNk1UYzFPRGczTmpRek1Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFVVW5veE5tdEpaalI0T0ZRbE1rSlNUa1ExZURBelpGSlJaR0pWVVNVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME16RWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEubzYtbkgteFdHWUIwZWx1d0V4NHU5UFI2UVVmbElPUFhNOEdKYmE5UUpwRWVEandYcF9GNUFEM2lKTmduVUZEZW1ud19wUlFOWEhkeHl1c1hXRVBTZ01aRVBKSTJ0SnhkeFdTUVNnMTFTM1lpbE9NdWtKck5GRFR5M29KTWMzTEFRWDVNUDc1TW9sMFJJbDhaek5aQWFzQ1NKay1xV2ZDaVA1Z3dwYkU5X2U4NUk2MlJJSTNuWnpEOXVZV05vNzhkSUoyWlU3dE9VdU9RbDhfT0QtZkg1UmIxY0FVTzEybGE1aUhyMnFQZk9yaENJMGNhSUJRYUJMWEYwcUttWkRUVE5uVmJUcXhNOFl0b1daNW9IdXdQbmJoNGowU3Iyc0JXNS0yNlFGSmQyS3BfV1UwMVlWY3hTYlR2RVNLS3J4V3J1cHZ1YWtDM0pKdl9HSE9yamlUTEp3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=TRz16kIf4x8T%2BRND5x03dRQdbUQ%3D&Expires=1758876431 securityworker stdout | 2025-09-26 08:37:11,754 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,754 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,754 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,754 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:11,754 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,754 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:11,754 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:11,754 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:11,754 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:11,755 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:11,755 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:11,755 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:11,755 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:11,755 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:11,755 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:11,755 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876431 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:37:11,760 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ETXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE16RXNJbVY0Y0NJNk1UYzFPRGczTmpRek1Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFVVW5veE5tdEpaalI0T0ZRbE1rSlNUa1ExZURBelpGSlJaR0pWVVNVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME16RWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEubzYtbkgteFdHWUIwZWx1d0V4NHU5UFI2UVVmbElPUFhNOEdKYmE5UUpwRWVEandYcF9GNUFEM2lKTmduVUZEZW1ud19wUlFOWEhkeHl1c1hXRVBTZ01aRVBKSTJ0SnhkeFdTUVNnMTFTM1lpbE9NdWtKck5GRFR5M29KTWMzTEFRWDVNUDc1TW9sMFJJbDhaek5aQWFzQ1NKay1xV2ZDaVA1Z3dwYkU5X2U4NUk2MlJJSTNuWnpEOXVZV05vNzhkSUoyWlU3dE9VdU9RbDhfT0QtZkg1UmIxY0FVTzEybGE1aUhyMnFQZk9yaENJMGNhSUJRYUJMWEYwcUttWkRUVE5uVmJUcXhNOFl0b1daNW9IdXdQbmJoNGowU3Iyc0JXNS0yNlFGSmQyS3BfV1UwMVlWY3hTYlR2RVNLS3J4V3J1cHZ1YWtDM0pKdl9HSE9yamlUTEp3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=TRz16kIf4x8T%2BRND5x03dRQdbUQ%3D&Expires=1758876431 securityworker stdout | 2025-09-26 08:37:11,760 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:37:11,760 [86] [DEBUG] [util.secscan.v4.api] POSTing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_report repositorygcworker stdout | 2025-09-26 08:37:12,029 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} gunicorn-registry stdout | 2025-09-26 08:37:12,224 [251] [DEBUG] [app] Starting request: urn:request:c1d6c135-622c-4b7e-afc9-7d1d0a03a14b (/v2/testorg2/alpine/blobs/sha256:06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:12,224 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:12,224 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:12,224 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:12,225 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:12,225 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:12,225 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:12,225 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:12,225 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:12,226 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:12,228 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:12,229 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:12,229 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595_2 gunicorn-registry stdout | 2025-09-26 08:37:12,230 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:12,230 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:12,231 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:12,232 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:12,233 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:12,234 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:12,235 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595_2: None gunicorn-registry stdout | 2025-09-26 08:37:12,235 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595_2: None gunicorn-registry stdout | 2025-09-26 08:37:12,235 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:12,235 [251] [DEBUG] [app] Ending request: urn:request:c1d6c135-622c-4b7e-afc9-7d1d0a03a14b (/v2/testorg2/alpine/blobs/sha256:06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:c1d6c135-622c-4b7e-afc9-7d1d0a03a14b', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595', 'path': '/v2/testorg2/alpine/blobs/sha256:06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:12,235 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:12,235 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:12 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.012 1718 0.012) gunicorn-registry stdout | 2025-09-26 08:37:12,236 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:12 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" proxycacheblobworker stdout | 2025-09-26 08:37:12,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:37:12,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:22.477454+00:00 (in 9.999574 seconds) proxycacheblobworker stdout | 2025-09-26 08:37:12,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:22 GMT)" (scheduled at 2025-09-26 08:37:12.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:37:12,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:37:12,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 37, 12, 478270), True, datetime.datetime(2025, 9, 26, 8, 37, 12, 478270), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:37:12,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:37:12,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:37:12,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:22 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:37:12,510 [258] [DEBUG] [app] Starting request: urn:request:51c0099b-728b-4351-84ba-8ec8c020700d (/v2/testorg2/alpine/blobs/uploads/31fda652-accb-4bc2-b51a-867582fc6605) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:12,510 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '31fda652-accb-4bc2-b51a-867582fc6605', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:12,510 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:12,510 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:12,511 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:12,511 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:12,511 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:12,511 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:12,511 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:12,512 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:12,513 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:12,514 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:12,515 [258] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:12,516 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:12,517 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:12,518 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:12,519 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:12,520 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['31fda652-accb-4bc2-b51a-867582fc6605', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:12,521 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:12,521 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:12,521 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:12,523 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:12,523 [258] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:12,523 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,523 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,523 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,523 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,523 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:12,523 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,523 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,523 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:12,523 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:12,523 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:12,523 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:12,523 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:12,523 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,523 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,523 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,524 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:12,524 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:12,524 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:12,524 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,524 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,524 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:12,524 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083712Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:12,524 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083712Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | ce3cc0daeb3f2bad4547af382fd38433f2a8579069f59dc0fc78fc8af983cb35 gunicorn-registry stdout | 2025-09-26 08:37:12,524 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | dd884823b68f637c17a3d02e07bb91074fa9064854420049314c6e8e0ee06901 gunicorn-registry stdout | 2025-09-26 08:37:12,524 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,524 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:12,524 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:12,525 [258] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | 2025-09-26 08:37:12,554 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:12,554 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9a79-butu9v-17o', 'x-amz-id-2': 'mg0l9a79-butu9v-17o', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:12 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:12,555 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d68d650b8d73ec60008f934dc' gunicorn-registry stdout | 2025-09-26 08:37:12,555 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,555 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:12,555 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:12,555 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9a79-butu9v-17o', 'HostId': 'mg0l9a79-butu9v-17o', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9a79-butu9v-17o', 'x-amz-id-2': 'mg0l9a79-butu9v-17o', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:12 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d', 'UploadId': '68d650b8d73ec60008f934dc'} gunicorn-registry stdout | 2025-09-26 08:37:12,555 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload servicekey stdout | 2025-09-26 08:37:12,642 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:37:12,718 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} gunicorn-registry stdout | 2025-09-26 08:37:12,867 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:12,867 [258] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:12,867 [258] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d', 'UploadId': '68d650b8d73ec60008f934dc', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b882b560>, 'ContentLength': 3500910} gunicorn-registry stdout | 2025-09-26 08:37:12,868 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,868 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,868 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,868 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,868 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:12,868 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,868 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,868 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:12,868 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:12,868 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:12,868 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:12,868 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:12,869 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,876 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,876 [258] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:12,876 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,876 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,876 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d', 'query_string': {'uploadId': '68d650b8d73ec60008f934dc', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '3500910', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'rsxCKl+RaMrmD6eS96dc1Q==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b882b560>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d?uploadId=68d650b8d73ec60008f934dc&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d', 'UploadId': '68d650b8d73ec60008f934dc', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b882b560>, 'ContentLength': 3500910}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:12,876 [258] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:12,876 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:12,876 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,876 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,876 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:12,876 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d gunicorn-registry stdout | partNumber=1&uploadId=68d650b8d73ec60008f934dc gunicorn-registry stdout | content-length:3500910 gunicorn-registry stdout | content-md5:rsxCKl+RaMrmD6eS96dc1Q== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083712Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:12,876 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083712Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 8e8646c5328d944f60c1c4060653ad845b8d86f5c6a00f1f8b84ca062868f79d gunicorn-registry stdout | 2025-09-26 08:37:12,876 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 12e0c7d1f7a2a244e112dacebee0e433ab204218191017ee3e2a25cb24bdb7de gunicorn-registry stdout | 2025-09-26 08:37:12,877 [258] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:12,877 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:12,877 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:12,878 [258] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:37:12,880 [258] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:37:13,151 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d?uploadId=68d650b8d73ec60008f934dc&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:13,151 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9agf-rtfes-22z', 'x-amz-id-2': 'mg0l9agf-rtfes-22z', 'ETag': '"aecc422a5f9168cae60fa792f7a75cd5"', 'Date': 'Fri, 26 Sep 2025 08:37:13 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:13,151 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:13,151 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,151 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:13,151 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,151 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9agf-rtfes-22z', 'HostId': 'mg0l9agf-rtfes-22z', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9agf-rtfes-22z', 'x-amz-id-2': 'mg0l9agf-rtfes-22z', 'etag': '"aecc422a5f9168cae60fa792f7a75cd5"', 'date': 'Fri, 26 Sep 2025 08:37:13 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"aecc422a5f9168cae60fa792f7a75cd5"'} gunicorn-registry stdout | 2025-09-26 08:37:13,152 [258] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d', 'UploadId': '68d650b8d73ec60008f934dc', 'MultipartUpload': {'Parts': [{'ETag': '"aecc422a5f9168cae60fa792f7a75cd5"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:13,152 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,152 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,152 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,152 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,152 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,152 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,152 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,153 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:13,153 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:13,153 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:13,153 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:13,153 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,153 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,153 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,153 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d', 'query_string': {'uploadId': '68d650b8d73ec60008f934dc'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"aecc422a5f9168cae60fa792f7a75cd5"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d?uploadId=68d650b8d73ec60008f934dc', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d', 'UploadId': '68d650b8d73ec60008f934dc', 'MultipartUpload': {'Parts': [{'ETag': '"aecc422a5f9168cae60fa792f7a75cd5"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:13,153 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,153 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,154 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,154 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,154 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:13,154 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d gunicorn-registry stdout | uploadId=68d650b8d73ec60008f934dc gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:298f938906ad70b91134ed83a9f5ba2f0d0a9efb56a62b1521393b6a54e3f775 gunicorn-registry stdout | x-amz-date:20250926T083713Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 298f938906ad70b91134ed83a9f5ba2f0d0a9efb56a62b1521393b6a54e3f775 gunicorn-registry stdout | 2025-09-26 08:37:13,154 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083713Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 7348e95bf8c3d657f176c389ddb8805f500a292b82e0da4289e945ae01cadecf gunicorn-registry stdout | 2025-09-26 08:37:13,154 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 2c9d721f270ce252d1c896b419a8aea68e7a3cbe5acaf327837bc94c7e7f4ea9 gunicorn-registry stdout | 2025-09-26 08:37:13,154 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,154 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:13,154 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:13,172 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d?uploadId=68d650b8d73ec60008f934dc HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:13,172 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ao3-5caoyf-f79', 'x-amz-id-2': 'mg0l9ao3-5caoyf-f79', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:13 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:13,173 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d"e284adea5fa6b94c3c9755b69bc16913-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d?uploadId=68d650b8d73ec60008f934dc' gunicorn-registry stdout | 2025-09-26 08:37:13,173 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,173 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,173 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:13,173 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,173 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9ao3-5caoyf-f79', 'HostId': 'mg0l9ao3-5caoyf-f79', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ao3-5caoyf-f79', 'x-amz-id-2': 'mg0l9ao3-5caoyf-f79', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:13 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d?uploadId=68d650b8d73ec60008f934dc', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d', 'ETag': '"e284adea5fa6b94c3c9755b69bc16913-1"'} gunicorn-registry stdout | 2025-09-26 08:37:13,173 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:13,174 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:13,174 [258] [DEBUG] [data.registry_model.blobuploader] Uploaded 3500910 bytes to blob 31fda652-accb-4bc2-b51a-867582fc6605 took 0.6533825397491455 seconds gunicorn-registry stdout | 2025-09-26 08:37:13,175 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['31fda652-accb-4bc2-b51a-867582fc6605', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,176 [258] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '31fda652-accb-4bc2-b51a-867582fc6605', 3500910, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENw/O+/MP6Ha1VIMf5p17APPf6nouFPcvH5TzHFFFNMh6X/CwAA//9wI5wVAGZtAH/oiodpWoz/En88CzhMHdHxZy4AAAAAAAAAAFqrAQAAAABTkM9h9H8iWOuj06umOceCk5RVhUpj17darcm+0rQxA5RiLg==', 9, '{"chunks": [["uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d", 0, 3500910]]}', 1, 7169536, datetime.datetime(2025, 9, 26, 8, 37, 12, 461809), None, None, 52]) gunicorn-registry stdout | 2025-09-26 08:37:13,178 [258] [DEBUG] [app] Ending request: urn:request:51c0099b-728b-4351-84ba-8ec8c020700d (/v2/testorg2/alpine/blobs/uploads/31fda652-accb-4bc2-b51a-867582fc6605) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:51c0099b-728b-4351-84ba-8ec8c020700d', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/31fda652-accb-4bc2-b51a-867582fc6605', 'path': '/v2/testorg2/alpine/blobs/uploads/31fda652-accb-4bc2-b51a-867582fc6605', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:13,178 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:13,178 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:13,179 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:13 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/31fda652-accb-4bc2-b51a-867582fc6605 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:13 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/31fda652-accb-4bc2-b51a-867582fc6605 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.672 3502690 0.670) gunicorn-registry stdout | 2025-09-26 08:37:13,220 [258] [DEBUG] [app] Starting request: urn:request:a9a98f55-f8c9-444f-8a67-45a0a055f1a9 (/v2/testorg2/alpine/blobs/uploads/31fda652-accb-4bc2-b51a-867582fc6605) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:13,221 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '31fda652-accb-4bc2-b51a-867582fc6605', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:13,221 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:13,221 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:13,222 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:13,222 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:13,222 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:13,222 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:13,222 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:13,223 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,224 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,225 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,226 [258] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,227 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,228 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,229 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,230 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:13,230 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['31fda652-accb-4bc2-b51a-867582fc6605', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,231 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:13,231 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:13,231 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:13,232 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:13,232 [258] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/008df781-cfc0-4ef4-9d26-b94c489b7cba', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:13,232 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,232 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,232 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,232 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,232 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,232 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,232 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,232 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,232 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:13,232 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:13,233 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:13,233 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:13,233 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,233 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,233 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,233 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/008df781-cfc0-4ef4-9d26-b94c489b7cba?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/008df781-cfc0-4ef4-9d26-b94c489b7cba', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/008df781-cfc0-4ef4-9d26-b94c489b7cba?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/008df781-cfc0-4ef4-9d26-b94c489b7cba', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:13,233 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,233 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,233 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,233 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,234 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:13,234 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/008df781-cfc0-4ef4-9d26-b94c489b7cba gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083713Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:13,234 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083713Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | c2ab986738b169046708fa34edb3fb0e985eb661c8154a0edd098053db417531 gunicorn-registry stdout | 2025-09-26 08:37:13,234 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 63fa3a5648bb8b25f5cefe0488c5393f5ccfcdc5cb66bdde8fcc977cc49beb5b gunicorn-registry stdout | 2025-09-26 08:37:13,234 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,234 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:13,234 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:13,241 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/008df781-cfc0-4ef4-9d26-b94c489b7cba?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:13,241 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9aqb-6nyc94-9ai', 'x-amz-id-2': 'mg0l9aqb-6nyc94-9ai', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:13 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:13,241 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/008df781-cfc0-4ef4-9d26-b94c489b7cba68d650b9d73ec60008f934e6' gunicorn-registry stdout | 2025-09-26 08:37:13,241 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,241 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:13,241 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,241 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9aqb-6nyc94-9ai', 'HostId': 'mg0l9aqb-6nyc94-9ai', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9aqb-6nyc94-9ai', 'x-amz-id-2': 'mg0l9aqb-6nyc94-9ai', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:13 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/008df781-cfc0-4ef4-9d26-b94c489b7cba', 'UploadId': '68d650b9d73ec60008f934e6'} gunicorn-registry stdout | 2025-09-26 08:37:13,242 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:13,242 [258] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/008df781-cfc0-4ef4-9d26-b94c489b7cba', 'UploadId': '68d650b9d73ec60008f934e6'} gunicorn-registry stdout | 2025-09-26 08:37:13,242 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,242 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,242 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,242 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,242 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,242 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,243 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:13,243 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:13,243 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:13,243 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:13,243 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,243 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,243 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,243 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/008df781-cfc0-4ef4-9d26-b94c489b7cba', 'query_string': {'uploadId': '68d650b9d73ec60008f934e6'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/008df781-cfc0-4ef4-9d26-b94c489b7cba', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/008df781-cfc0-4ef4-9d26-b94c489b7cba?uploadId=68d650b9d73ec60008f934e6', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/008df781-cfc0-4ef4-9d26-b94c489b7cba', 'UploadId': '68d650b9d73ec60008f934e6'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:13,243 [258] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,243 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,243 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,243 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,243 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:13,243 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/008df781-cfc0-4ef4-9d26-b94c489b7cba gunicorn-registry stdout | uploadId=68d650b9d73ec60008f934e6 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083713Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:13,243 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083713Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 24bc0c9e80d64f5109dc5ed551a2bdbf9285eaa3521e3b90bc2d217c97ca042c gunicorn-registry stdout | 2025-09-26 08:37:13,243 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 02b0542881fb7b629035f55c97ecec3da66ede2cbbbd9dbd536941345fc4e738 gunicorn-registry stdout | 2025-09-26 08:37:13,243 [258] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,244 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:13,244 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:13,251 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/008df781-cfc0-4ef4-9d26-b94c489b7cba?uploadId=68d650b9d73ec60008f934e6 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:37:13,251 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9aql-6tji2r-17a4', 'x-amz-id-2': 'mg0l9aql-6tji2r-17a4', 'Date': 'Fri, 26 Sep 2025 08:37:13 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:13,251 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:13,251 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,251 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:13,251 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,251 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9aql-6tji2r-17a4', 'HostId': 'mg0l9aql-6tji2r-17a4', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9aql-6tji2r-17a4', 'x-amz-id-2': 'mg0l9aql-6tji2r-17a4', 'date': 'Fri, 26 Sep 2025 08:37:13 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:37:13,252 [258] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 31fda652-accb-4bc2-b51a-867582fc6605 took 0.020339250564575195 seconds gunicorn-registry stdout | 2025-09-26 08:37:13,252 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['31fda652-accb-4bc2-b51a-867582fc6605', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,253 [258] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '31fda652-accb-4bc2-b51a-867582fc6605', 3500910, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENw/O+/MP6Ha1VIMf5p17APPf6nouFPcvH5TzHFFFNMh6X/CwAA//9wI5wVAGZtAH/oiodpWoz/En88CzhMHdHxZy4AAAAAAAAAAFqrAQAAAABTkM9h9H8iWOuj06umOceCk5RVhUpj17darcm+0rQxA5RiLg==', 9, '{"chunks": [["uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d", 0, 3500910]]}', 2, 7169536, datetime.datetime(2025, 9, 26, 8, 37, 12, 461809), None, None, 52]) gunicorn-registry stdout | 2025-09-26 08:37:13,255 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:13,255 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:13,255 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:13,256 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:13,256 [258] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595'} gunicorn-registry stdout | 2025-09-26 08:37:13,256 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,256 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,256 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,256 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,256 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,256 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,256 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,256 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:13,256 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:13,256 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:13,256 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:13,257 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,257 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,257 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,257 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:13,257 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,257 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,257 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,257 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,257 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:13,257 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083713Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:13,257 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083713Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 1417af0b2380bc39ff06b921ae183e0a0c25eda60b231b534a133f6328689076 gunicorn-registry stdout | 2025-09-26 08:37:13,257 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | f1f18205beaeb8642fecc84fc8c7c76f06e3fadaae1fb9281dd6d9d9e565f526 gunicorn-registry stdout | 2025-09-26 08:37:13,257 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,257 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:13,257 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:13,263 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:37:13,263 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9aqy-71phhm-1e57', 'x-amz-id-2': 'mg0l9aqy-71phhm-1e57', 'Content-Type': 'application/xml', 'Content-Length': '339', 'Date': 'Fri, 26 Sep 2025 08:37:13 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:13,263 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:13,263 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,263 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:13,263 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,263 [258] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:37:13,263 [258] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:37:13,263 [258] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595 gunicorn-registry stdout | 2025-09-26 08:37:13,264 [258] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:13,264 [258] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:13,264 [258] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:13,264 [258] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:37:13,264 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,264 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,264 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,264 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,264 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,264 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,264 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,264 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:13,264 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:13,264 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:13,264 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:13,265 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,265 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,265 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,265 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:13,265 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,265 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,265 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,265 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,265 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,265 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:13,266 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083713Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:13,266 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083713Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 93ef5e2030ac8c681828f557a13a86cfb310440f405d8127453f554adc047084 gunicorn-registry stdout | 2025-09-26 08:37:13,266 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 9d057a1a9e1d28a00f7b81eea737d44555d86c834c8a26166ed21bb1bb4bbec8 gunicorn-registry stdout | 2025-09-26 08:37:13,266 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,266 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,266 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:13,266 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:13,266 [258] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | 2025-09-26 08:37:13,294 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:13,294 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9aru-7kke4c-1t3', 'x-amz-id-2': 'mg0l9aru-7kke4c-1t3', 'ETag': '"e284adea5fa6b94c3c9755b69bc16913-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:13 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '3500910', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:13 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:13,294 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:13,295 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,295 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:13,295 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,295 [258] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:37:13,295 [258] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:13,295 [258] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:13,295 [258] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:13,295 [258] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595', 'extra_args': {}, 'callbacks': [], 'size': 3500910} gunicorn-registry stdout | 2025-09-26 08:37:13,295 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,295 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,295 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,295 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,295 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,295 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,295 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,295 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,295 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,295 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,296 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:13,296 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:13,296 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:13,296 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:13,297 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,297 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,297 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,297 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:13,297 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,297 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,297 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,297 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,297 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,297 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:13,297 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4fae6433-31b6-48f8-aac7-af3d8cad098d gunicorn-registry stdout | x-amz-date:20250926T083713Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:13,297 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083713Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | c5e67b5e11fb30a62d743e9ffabb9449c4e8d3e40dfde2885ce60bacc1fc4f55 gunicorn-registry stdout | 2025-09-26 08:37:13,297 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | aae07f84232225f91e784e47aaf543920e88f881974f8104c48e1ba84b4cebb6 gunicorn-registry stdout | 2025-09-26 08:37:13,297 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,297 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,297 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:13,298 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:13,298 [258] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:13,325 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:37:13,325 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9as3-7plggw-1c2q', 'x-amz-id-2': 'mg0l9as3-7plggw-1c2q', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:37:13 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:13,325 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:37:13.000Z"e284adea5fa6b94c3c9755b69bc16913-1"' gunicorn-registry stdout | 2025-09-26 08:37:13,326 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,326 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:13,326 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:13,326 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:13,326 [258] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:13,326 [258] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 31fda652-accb-4bc2-b51a-867582fc6605 with digest sha256:06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595 took 0.06292939186096191 seconds gunicorn-registry stdout | 2025-09-26 08:37:13,327 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['31fda652-accb-4bc2-b51a-867582fc6605', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,328 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,329 [258] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['5f9dc7db-ab9e-4bb9-9880-1e86277b4890', 3500910, 7169536, True, True, 'sha256:06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595']) gunicorn-registry stdout | 2025-09-26 08:37:13,329 [258] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [53, 9]) gunicorn-registry stdout | 2025-09-26 08:37:13,330 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,331 [258] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [3, 53, datetime.datetime(2025, 9, 26, 8, 37, 13, 331661), datetime.datetime(2025, 9, 26, 9, 37, 13, 331646)]) gunicorn-registry stdout | 2025-09-26 08:37:13,332 [258] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [52]) gunicorn-registry stdout | 2025-09-26 08:37:13,334 [258] [DEBUG] [app] Ending request: urn:request:a9a98f55-f8c9-444f-8a67-45a0a055f1a9 (/v2/testorg2/alpine/blobs/uploads/31fda652-accb-4bc2-b51a-867582fc6605) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:a9a98f55-f8c9-444f-8a67-45a0a055f1a9', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/31fda652-accb-4bc2-b51a-867582fc6605?digest=sha256:06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595', 'path': '/v2/testorg2/alpine/blobs/uploads/31fda652-accb-4bc2-b51a-867582fc6605', 'parameters': {'digest': 'sha256:06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:13,334 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:13,334 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:13,335 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:13 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/31fda652-accb-4bc2-b51a-867582fc6605?digest=sha256%3A06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:13 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/31fda652-accb-4bc2-b51a-867582fc6605?digest=sha256%3A06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.114 1853 0.114) gunicorn-registry stdout | 2025-09-26 08:37:13,478 [258] [DEBUG] [app] Starting request: urn:request:91a04868-9770-4af4-b05f-83c884f2d0bf (/v2/testorg2/alpine/blobs/sha256:dbec5ca72d7951fb0a5a2f9d1ec72df1126c7409248d9b710a555140056d343b) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:13,478 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:dbec5ca72d7951fb0a5a2f9d1ec72df1126c7409248d9b710a555140056d343b', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:13,478 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:13,478 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:13,479 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:13,479 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:13,479 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:13,479 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:13,479 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:13,480 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,482 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,483 [258] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:13,483 [258] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:dbec5ca72d7951fb0a5a2f9d1ec72df1126c7409248d9b710a555140056d343b_2 gunicorn-registry stdout | 2025-09-26 08:37:13,484 [258] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:dbec5ca72d7951fb0a5a2f9d1ec72df1126c7409248d9b710a555140056d343b_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:13,485 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,486 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,487 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,488 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:dbec5ca72d7951fb0a5a2f9d1ec72df1126c7409248d9b710a555140056d343b', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,489 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:dbec5ca72d7951fb0a5a2f9d1ec72df1126c7409248d9b710a555140056d343b', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,490 [258] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:dbec5ca72d7951fb0a5a2f9d1ec72df1126c7409248d9b710a555140056d343b_2: None gunicorn-registry stdout | 2025-09-26 08:37:13,490 [258] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:dbec5ca72d7951fb0a5a2f9d1ec72df1126c7409248d9b710a555140056d343b_2: None gunicorn-registry stdout | 2025-09-26 08:37:13,490 [258] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:13,490 [258] [DEBUG] [app] Ending request: urn:request:91a04868-9770-4af4-b05f-83c884f2d0bf (/v2/testorg2/alpine/blobs/sha256:dbec5ca72d7951fb0a5a2f9d1ec72df1126c7409248d9b710a555140056d343b) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:91a04868-9770-4af4-b05f-83c884f2d0bf', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:dbec5ca72d7951fb0a5a2f9d1ec72df1126c7409248d9b710a555140056d343b', 'path': '/v2/testorg2/alpine/blobs/sha256:dbec5ca72d7951fb0a5a2f9d1ec72df1126c7409248d9b710a555140056d343b', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:13,490 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:13,490 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:13,491 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:13 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:dbec5ca72d7951fb0a5a2f9d1ec72df1126c7409248d9b710a555140056d343b HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:13 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:dbec5ca72d7951fb0a5a2f9d1ec72df1126c7409248d9b710a555140056d343b HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.015 1718 0.015) gunicorn-registry stdout | 2025-09-26 08:37:13,534 [258] [DEBUG] [app] Starting request: urn:request:6cc176f0-b320-4b96-a4a4-ab1683b35480 (/v2/testorg2/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:13,534 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:13,534 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:13,534 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:13,535 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:13,535 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:13,535 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:13,535 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:13,535 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:13,536 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,538 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,538 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,539 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,540 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,541 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,542 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:13,543 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:13,544 [258] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [3, '969c43b7-75d9-42d9-8231-53bbd9553b6d', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 37, 13, 544112)]) gunicorn-registry stdout | 2025-09-26 08:37:13,546 [258] [DEBUG] [app] Ending request: urn:request:6cc176f0-b320-4b96-a4a4-ab1683b35480 (/v2/testorg2/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:6cc176f0-b320-4b96-a4a4-ab1683b35480', 'remote_addr': '10.131.2.20', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/', 'path': '/v2/testorg2/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:13,546 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:13,546 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:13,547 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:13 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:13 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.014 1697 0.014) securityworker stdout | 2025-09-26 08:37:13,711 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "POST /indexer/api/v1/index_report HTTP/1.1" 201 None securityworker stdout | 2025-09-26 08:37:13,716 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [14, 1, 0]) securityworker stdout | 2025-09-26 08:37:13,730 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [14, 1, 0]) securityworker stdout | 2025-09-26 08:37:13,741 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:37:13,741 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/matcher/api/v1/vulnerability_report/sha256:d17c97e1ccf6490cb90fa17f6f021e404401d2656928631c73fd75ee711d87bd securityworker stdout | 2025-09-26 08:37:13,770 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /matcher/api/v1/vulnerability_report/sha256:d17c97e1ccf6490cb90fa17f6f021e404401d2656928631c73fd75ee711d87bd HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:37:13,776 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Attempting to create notifications for manifest #14 securityworker stdout | 2025-09-26 08:37:13,776 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE ("manifestsecuritystatus"."manifest_id" = %s)', [14]) securityworker stdout | 2025-09-26 08:37:13,778 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [14, 2, 2, '""', datetime.datetime(2025, 9, 26, 8, 37, 13, 778502), '37b46b4a70b6f1a19d5e4e18d21f57ff', 4, '{}']) securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Marking id range as completed: 14-15 by worker securityworker stdout | 2025-09-26 08:37:13,783 [86] [DEBUG] [util.migrate.allocator] Marking id range as completed: 14-15 by worker securityworker stdout | 2025-09-26 08:37:13,783 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 14-15 securityworker stdout | 2025-09-26 08:37:13,783 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 6-14 securityworker stdout | 2025-09-26 08:37:13,783 [86] [DEBUG] [util.migrate.allocator] Already merged with block 6-14 securityworker stdout | 2025-09-26 08:37:13,783 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 6 securityworker stdout | 2025-09-26 08:37:13,783 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:37:13,783 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 14-15 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 6-14 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Already merged with block 6-14 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 6 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total range: 4-6 securityworker stdout | 2025-09-26 08:37:13,783 [86] [DEBUG] [util.migrate.allocator] Total range: 4-6 securityworker stdout | 2025-09-26 08:37:13,783 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:13,783 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 4-6 securityworker stdout | 2025-09-26 08:37:13,783 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 4 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 4-6 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 4 securityworker stdout | 2025-09-26 08:37:13,784 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 4, 8]) securityworker stdout | 2025-09-26 08:37:13,785 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 4-8 by worker securityworker stdout | 2025-09-26 08:37:13,785 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 4-8 securityworker stdout | 2025-09-26 08:37:13,785 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 4 securityworker stdout | 2025-09-26 08:37:13,785 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 8 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 4-8 by worker securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 4-8 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 4 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 8 securityworker stdout | 2025-09-26 08:37:13,785 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:13,785 [86] [DEBUG] [util.migrate.allocator] Total range: 8-4 securityworker stdout | 2025-09-26 08:37:13,785 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:37:13,785 [86] [DEBUG] [util.migrate.allocator] Total range: 4-19 securityworker stdout | 2025-09-26 08:37:13,785 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:13,785 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 4-19 securityworker stdout | 2025-09-26 08:37:13,785 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 15 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total range: 8-4 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total range: 4-19 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 4-19 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 15 securityworker stdout | 2025-09-26 08:37:13,787 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 32, 7, 688747), 10, 14]) securityworker stdout | 2025-09-26 08:37:13,788 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 10-14 by worker securityworker stdout | 2025-09-26 08:37:13,788 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 10-14 securityworker stdout | 2025-09-26 08:37:13,788 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 10-14 securityworker stdout | 2025-09-26 08:37:13,788 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:37:13,788 [86] [DEBUG] [util.migrate.allocator] Total range: 4-19 securityworker stdout | 2025-09-26 08:37:13,788 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:37:13,788 [86] [DEBUG] [util.migrate.allocator] Right range 10-14 securityworker stdout | 2025-09-26 08:37:13,788 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 4-10 securityworker stdout | 2025-09-26 08:37:13,788 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 6 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 10-14 by worker securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 10-14 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 10-14 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total range: 4-19 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Right range 10-14 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 4-10 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 6 securityworker stdout | 2025-09-26 08:37:13,789 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 32, 7, 688747), 6, 10]) securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 6-10 by worker securityworker stdout | 2025-09-26 08:37:13,790 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 6-10 by worker securityworker stdout | 2025-09-26 08:37:13,790 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 6-10 securityworker stdout | 2025-09-26 08:37:13,790 [86] [DEBUG] [util.migrate.allocator] Merging with block 10-14 securityworker stdout | 2025-09-26 08:37:13,790 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:37:13,790 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 6-14 securityworker stdout | 2025-09-26 08:37:13,790 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:37:13,790 [86] [DEBUG] [util.migrate.allocator] Total range: 4-19 securityworker stdout | 2025-09-26 08:37:13,791 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 6-10 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Merging with block 10-14 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 6-14 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total range: 4-19 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Left range 6-14 securityworker stdout | 2025-09-26 08:37:13,791 [86] [DEBUG] [util.migrate.allocator] Left range 6-14 securityworker stdout | 2025-09-26 08:37:13,791 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 14-19 securityworker stdout | 2025-09-26 08:37:13,791 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 15 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 14-19 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 15 securityworker stdout | 2025-09-26 08:37:13,791 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 32, 7, 688747), 15, 19]) securityworker stdout | 2025-09-26 08:37:13,792 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 15-19 by worker securityworker stdout | 2025-09-26 08:37:13,792 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 15-19 securityworker stdout | 2025-09-26 08:37:13,792 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 15 securityworker stdout | 2025-09-26 08:37:13,792 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:37:13,792 [86] [DEBUG] [util.migrate.allocator] Total range: 4-15 securityworker stdout | 2025-09-26 08:37:13,792 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 15-19 by worker securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 15-19 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 15 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total range: 4-15 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:37:13,793 [86] [DEBUG] [util.migrate.allocator] Right range 6-14 securityworker stdout | 2025-09-26 08:37:13,793 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 4-6 securityworker stdout | 2025-09-26 08:37:13,793 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 4 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Right range 6-14 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 4-6 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 4 securityworker stdout | 2025-09-26 08:37:13,793 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 32, 7, 688747), 4, 8]) securityworker stdout | 2025-09-26 08:37:13,794 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 4-8 by worker securityworker stdout | 2025-09-26 08:37:13,794 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 4-8 securityworker stdout | 2025-09-26 08:37:13,794 [86] [DEBUG] [util.migrate.allocator] Merging with block 6-14 securityworker stdout | 2025-09-26 08:37:13,794 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 14 securityworker stdout | 2025-09-26 08:37:13,794 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 4-8 by worker securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 4-8 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Merging with block 6-14 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 14 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:37:13,794 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:13,794 [86] [DEBUG] [util.migrate.allocator] Total range: 14-15 securityworker stdout | 2025-09-26 08:37:13,795 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:13,795 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 14-15 securityworker stdout | 2025-09-26 08:37:13,795 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 14 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total range: 14-15 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 14-15 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 14 securityworker stdout | 2025-09-26 08:37:13,795 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 32, 7, 688747), 14, 18]) securityworker stdout | 2025-09-26 08:37:13,796 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 14-18 by worker securityworker stdout | 2025-09-26 08:37:13,796 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 14-18 securityworker stdout | 2025-09-26 08:37:13,796 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 14 securityworker stdout | 2025-09-26 08:37:13,796 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 18 securityworker stdout | 2025-09-26 08:37:13,796 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:13,796 [86] [DEBUG] [util.migrate.allocator] Total range: 18-14 securityworker stdout | 2025-09-26 08:37:13,796 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:37:13,796 [86] [DEBUG] [util.migrate.allocator] Total range: 4-19 securityworker stdout | 2025-09-26 08:37:13,796 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:13,797 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 4-19 securityworker stdout | 2025-09-26 08:37:13,797 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 15 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 14-18 by worker securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 14-18 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 14 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 18 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total range: 18-14 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total range: 4-19 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 4-19 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 15 securityworker stdout | 2025-09-26 08:37:13,798 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 32, 7, 688747), 6, 10]) securityworker stdout | 2025-09-26 08:37:13,798 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 6-10 by worker securityworker stdout | 2025-09-26 08:37:13,798 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 6-10 securityworker stdout | 2025-09-26 08:37:13,799 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 6-10 securityworker stdout | 2025-09-26 08:37:13,799 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:37:13,799 [86] [DEBUG] [util.migrate.allocator] Total range: 4-19 securityworker stdout | 2025-09-26 08:37:13,799 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stdout | 2025-09-26 08:37:13,799 [86] [DEBUG] [util.migrate.allocator] Left range 6-10 securityworker stdout | 2025-09-26 08:37:13,799 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 10-19 securityworker stdout | 2025-09-26 08:37:13,799 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 15 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 6-10 by worker securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 6-10 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 6-10 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total range: 4-19 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Left range 6-10 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 10-19 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 15 securityworker stdout | 2025-09-26 08:37:13,800 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 32, 7, 688747), 12, 16]) securityworker stdout | 2025-09-26 08:37:13,801 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 12-16 by worker securityworker stdout | 2025-09-26 08:37:13,801 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 12-16 securityworker stdout | 2025-09-26 08:37:13,801 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 12-16 securityworker stdout | 2025-09-26 08:37:13,801 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stdout | 2025-09-26 08:37:13,801 [86] [DEBUG] [util.migrate.allocator] Total range: 4-19 securityworker stdout | 2025-09-26 08:37:13,801 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 3 total holes securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 12-16 by worker securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 12-16 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 12-16 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total range: 4-19 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 3 total holes securityworker stdout | 2025-09-26 08:37:13,801 [86] [DEBUG] [util.migrate.allocator] Right range 6-10 securityworker stdout | 2025-09-26 08:37:13,802 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 4-6 securityworker stdout | 2025-09-26 08:37:13,802 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 4 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Right range 6-10 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 4-6 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 4 securityworker stdout | 2025-09-26 08:37:13,802 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 32, 7, 688747), 4, 8]) securityworker stdout | 2025-09-26 08:37:13,803 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 4-8 by worker securityworker stdout | 2025-09-26 08:37:13,803 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 4-8 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 4-8 by worker securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 4-8 securityworker stdout | 2025-09-26 08:37:13,803 [86] [DEBUG] [util.migrate.allocator] Merging with block 6-10 securityworker stdout | 2025-09-26 08:37:13,804 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 10 securityworker stdout | 2025-09-26 08:37:13,804 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:37:13,804 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:37:13,804 [86] [DEBUG] [util.migrate.allocator] Total range: 10-19 securityworker stdout | 2025-09-26 08:37:13,804 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:37:13,804 [86] [DEBUG] [util.migrate.allocator] Right range 12-16 securityworker stdout | 2025-09-26 08:37:13,804 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 10-12 securityworker stdout | 2025-09-26 08:37:13,804 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 10 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Merging with block 6-10 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 10 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total range: 10-19 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Right range 12-16 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 10-12 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 10 securityworker stdout | 2025-09-26 08:37:13,805 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 32, 7, 688747), 10, 14]) securityworker stdout | 2025-09-26 08:37:13,806 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 10-14 by worker securityworker stdout | 2025-09-26 08:37:13,807 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 10-14 securityworker stdout | 2025-09-26 08:37:13,807 [86] [DEBUG] [util.migrate.allocator] Merging with block 12-16 securityworker stdout | 2025-09-26 08:37:13,807 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 16 securityworker stdout | 2025-09-26 08:37:13,807 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:37:13,807 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:13,807 [86] [DEBUG] [util.migrate.allocator] Total range: 16-19 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 10-14 by worker securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 10-14 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Merging with block 12-16 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 16 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total range: 16-19 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:13,807 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:13,807 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 16-19 securityworker stdout | 2025-09-26 08:37:13,807 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 16 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 16-19 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 16 securityworker stdout | 2025-09-26 08:37:13,808 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 32, 7, 688747), 16, 19]) securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 16-19 by worker securityworker stdout | 2025-09-26 08:37:13,809 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 16-19 by worker securityworker stdout | 2025-09-26 08:37:13,809 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 16-19 securityworker stdout | 2025-09-26 08:37:13,809 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 16 securityworker stdout | 2025-09-26 08:37:13,809 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 19 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 16-19 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 16 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 19 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:13,810 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:13,810 [86] [DEBUG] [util.migrate.allocator] Total range: 19-16 securityworker stdout | 2025-09-26 08:37:13,810 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:37:13,810 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] Total range: 19-16 securityworker stderr | 2025-09-26 08:37:13 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:37:13,810 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:37 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:37:14,180 [257] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '257'} gunicorn-registry stdout | 2025-09-26 08:37:14,185 [253] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '253'} gunicorn-registry stdout | 2025-09-26 08:37:14,189 [59] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '59'} gunicorn-registry stdout | 2025-09-26 08:37:14,195 [255] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '255'} gunicorn-registry stdout | 2025-09-26 08:37:14,201 [256] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '256'} gunicorn-registry stdout | 2025-09-26 08:37:14,207 [258] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '258'} gunicorn-registry stdout | 2025-09-26 08:37:14,211 [252] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '252'} gunicorn-registry stdout | 2025-09-26 08:37:14,215 [254] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '254'} gunicorn-registry stdout | 2025-09-26 08:37:14,219 [251] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '251'} gunicorn-registry stdout | 2025-09-26 08:37:14,409 [251] [DEBUG] [app] Starting request: urn:request:d11445f5-77f2-4b89-a399-2566fd4e300b (/v2/testorg2/alpine/blobs/sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:14,409 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:14,409 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:14,409 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:14,411 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:14,411 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:14,411 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:14,411 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:14,411 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:14,412 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:14,414 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:14,415 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:14,415 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584_2 gunicorn-registry stdout | 2025-09-26 08:37:14,416 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:14,416 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:14,418 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:14,419 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:14,420 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:14,421 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:14,422 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584_2: None gunicorn-registry stdout | 2025-09-26 08:37:14,422 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584_2: None gunicorn-registry stdout | 2025-09-26 08:37:14,422 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:14,422 [251] [DEBUG] [app] Ending request: urn:request:d11445f5-77f2-4b89-a399-2566fd4e300b (/v2/testorg2/alpine/blobs/sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:d11445f5-77f2-4b89-a399-2566fd4e300b', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584', 'path': '/v2/testorg2/alpine/blobs/sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:14,422 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:14,422 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:14,423 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:14 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:14 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.015 1718 0.015) gunicorn-registry stdout | 2025-09-26 08:37:14,528 [251] [DEBUG] [app] Starting request: urn:request:fa044d9c-69d4-42f3-bcb8-445a85c2bd75 (/v2/testorg2/alpine/blobs/sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:14,529 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:14,529 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:14,529 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:14,530 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:14,530 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:14,530 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:14,530 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:14,530 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:14,531 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:14,532 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:14,533 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:14,533 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584_2 gunicorn-registry stdout | 2025-09-26 08:37:14,534 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:14,534 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:14,536 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:14,537 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:14,538 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:14,539 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:14,540 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584_2: None gunicorn-registry stdout | 2025-09-26 08:37:14,540 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584_2: None gunicorn-registry stdout | 2025-09-26 08:37:14,540 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:14,541 [251] [DEBUG] [app] Ending request: urn:request:fa044d9c-69d4-42f3-bcb8-445a85c2bd75 (/v2/testorg2/alpine/blobs/sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:fa044d9c-69d4-42f3-bcb8-445a85c2bd75', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584', 'path': '/v2/testorg2/alpine/blobs/sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:14,541 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:14,541 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:14,541 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:14 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:14 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.014 1718 0.014) gunicorn-registry stdout | 2025-09-26 08:37:15,281 [258] [DEBUG] [app] Starting request: urn:request:787d5dea-65ad-4d77-8fac-bc10e413d000 (/v2/testorg2/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:15,281 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:15,281 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:15,281 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:15,282 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:15,282 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:15,282 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:15,282 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:15,282 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:15,283 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,285 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,286 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,287 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,288 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,289 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,291 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:15,292 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,293 [258] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [3, '6aacfc70-cd82-4a0f-b85a-45330f4b270a', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 37, 15, 292899)]) gunicorn-registry stdout | 2025-09-26 08:37:15,295 [258] [DEBUG] [app] Ending request: urn:request:787d5dea-65ad-4d77-8fac-bc10e413d000 (/v2/testorg2/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:787d5dea-65ad-4d77-8fac-bc10e413d000', 'remote_addr': '10.129.4.11', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/', 'path': '/v2/testorg2/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:15,295 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:15,295 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:15,295 [258] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:15 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:15 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.015 1697 0.015) securityworker stdout | 2025-09-26 08:37:15,407 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "POST /indexer/api/v1/index_report HTTP/1.1" 201 None securityworker stdout | 2025-09-26 08:37:15,410 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [14, 1, 0]) securityworker stdout | 2025-09-26 08:37:15,411 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE ("manifestsecuritystatus"."manifest_id" = %s)', [14]) securityworker stdout | 2025-09-26 08:37:15,411 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [14, 2, 2, '""', datetime.datetime(2025, 9, 26, 8, 37, 15, 411484), '37b46b4a70b6f1a19d5e4e18d21f57ff', 4, '{}']) securityworker stdout | 2025-09-26 08:37:15,414 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [19, 1, 0]) securityworker stdout | 2025-09-26 08:37:15,417 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:9234e8fb04c47cfe0f49931e4ac7eb76fa904e33b7f8576aec0501c085f02516', 1, 0]) securityworker stdout | 2025-09-26 08:37:15,418 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['c4abfd79-bf5b-4f0d-a72d-4c20edcc1b11']) securityworker stdout | 2025-09-26 08:37:15,419 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:37:15,420 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:37:15,420 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/92/9234e8fb04c47cfe0f49931e4ac7eb76fa904e33b7f8576aec0501c085f02516'} securityworker stdout | 2025-09-26 08:37:15,420 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,420 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,420 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,420 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:15,420 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,420 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:15,420 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:15,420 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:15,420 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:15,420 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:15,420 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:15,421 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,421 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,421 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,421 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/92/9234e8fb04c47cfe0f49931e4ac7eb76fa904e33b7f8576aec0501c085f02516', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/92/9234e8fb04c47cfe0f49931e4ac7eb76fa904e33b7f8576aec0501c085f02516', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/92/9234e8fb04c47cfe0f49931e4ac7eb76fa904e33b7f8576aec0501c085f02516', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/92/9234e8fb04c47cfe0f49931e4ac7eb76fa904e33b7f8576aec0501c085f02516'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:37:15,421 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:15,421 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:15,421 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,421 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,421 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:37:15,421 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/92/9234e8fb04c47cfe0f49931e4ac7eb76fa904e33b7f8576aec0501c085f02516 securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083715Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:37:15,421 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083715Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | 2a8ae5fe9c7b1bcd146ba389ff919016516a3cff7fa49d6fc7673725441b88be securityworker stdout | 2025-09-26 08:37:15,421 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | 425f0283aa3dc2833b49986e7044fbcba4b9deea9fb6f3e0d430d3d63e40ad63 securityworker stdout | 2025-09-26 08:37:15,421 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,421 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:37:15,422 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:37:15,438 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/92/9234e8fb04c47cfe0f49931e4ac7eb76fa904e33b7f8576aec0501c085f02516 HTTP/1.1" 200 581 securityworker stdout | 2025-09-26 08:37:15,438 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9cf3-9rg36i-up2', 'x-amz-id-2': 'mg0l9cf3-9rg36i-up2', 'ETag': '"7702b11c7ed5684c4be81fba747e2803-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:10 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '581', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:15 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:37:15,438 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:37:15,439 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,439 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:37:15,439 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:15,439 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9cf3-9rg36i-up2', 'HostId': 'mg0l9cf3-9rg36i-up2', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9cf3-9rg36i-up2', 'x-amz-id-2': 'mg0l9cf3-9rg36i-up2', 'etag': '"7702b11c7ed5684c4be81fba747e2803-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:10 GMT', 'content-type': 'application/octet-stream', 'content-length': '581', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:15 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 10, tzinfo=tzutc()), 'ContentLength': 581, 'ETag': '"7702b11c7ed5684c4be81fba747e2803-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } securityworker stdout | 2025-09-26 08:37:15,441 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4', 1, 0]) securityworker stdout | 2025-09-26 08:37:15,442 [86] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL (SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1")', [3, 'sha256:9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8', 1, 3, 'sha256:9234e8fb04c47cfe0f49931e4ac7eb76fa904e33b7f8576aec0501c085f02516', 1]) securityworker stdout | 2025-09-26 08:37:15,444 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['ad096286-57d1-4f7f-8ac5-6eab9aae39ae']) securityworker stdout | 2025-09-26 08:37:15,445 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:37:15,446 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s)', [19]) securityworker stdout | 2025-09-26 08:37:15,447 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:37:15,448 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) securityworker stdout | 2025-09-26 08:37:15,448 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Indexing manifest [19] 4/alpine@sha256:eafc1edb577d2e9b458664a15f23ea1c370214193226069eb22921169fc7e43f securityworker stdout | 2025-09-26 08:37:15,448 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,448 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,448 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,448 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:15,448 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,449 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:15,449 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:15,449 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:15,449 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:15,449 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:15,449 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:15,449 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:15,449 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,449 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:15,449 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:15,449 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876435 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/98/9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8 securityworker stdout | 2025-09-26 08:37:15,455 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ETTFMQ0pwWVhRaU9qRTNOVGc0TnpVNE16VXNJbVY0Y0NJNk1UYzFPRGczTmpRek5Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4NU9DODVPREkwWXpJM05qYzVaRE5pTWpkak5XVXhZMkl3TUdFM00yRmtZalptTkdZNFpEVTFOams1TkRFeE1XTXhNbVJpTTJNMVpEWXhZVEJqT0RRelpHWTRQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFWYTJwVFlYSkpVRWRYY0ZCSWRVUlVTekl6TjFOU2RrcE9lRWtsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRNMUlpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuYVVZc2VEVWZ2ajlwNHB5OUl2RjRRNlpDdXVsQTlTdlRtRmZMZkhHcHZIYkMtQ3ZKbFp3NXVJdEVZSG5VVUg3VXQ1TkJWY1FsS0R3d0M3bmk3UkdsZWpOQlBQajZIMHR2aEZyZVVhdEFfclpEelFiUk5sSDdPeGQwRzNsaDhCN1hPS0hVT1c0dG9CeVZUUWFoelR5Y0s0V3oyNDAwd2xIdFRaY0xsMS1NMmJ1MFN1SGQ0cmc3bTdZcDRBbVpTYTN4WHUxS0xvUnpCU2w5amtlRlgtaTFTbVhucHZ3NVBhU3NSaFJvZWpCYU1TOVhLd0xKb0xWaEU1MDNpZ3JkSTQ0eE1CRWlyM3c0dGVxMnFoRlpEaHVmcWlVUEh1Y3ZJUkZWMkJmX3k5SEVMWWlReHZ5c19UVE5pVXhZb0FUWFdUQU9VNkZDbVVIdmdlR1c1T0I3N0xSTEpn/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/98/9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=UkjSarIPGWpPHuDTK237SRvJNxI%3D&Expires=1758876435 securityworker stdout | 2025-09-26 08:37:15,455 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,455 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,455 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,455 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:15,455 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,455 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:15,455 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:15,455 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:15,455 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:15,455 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:15,455 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:15,456 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:15,456 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,456 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:15,456 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:15,456 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876435 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/98/9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8 securityworker stdout | 2025-09-26 08:37:15,461 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ETTFMQ0pwWVhRaU9qRTNOVGc0TnpVNE16VXNJbVY0Y0NJNk1UYzFPRGczTmpRek5Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4NU9DODVPREkwWXpJM05qYzVaRE5pTWpkak5XVXhZMkl3TUdFM00yRmtZalptTkdZNFpEVTFOams1TkRFeE1XTXhNbVJpTTJNMVpEWXhZVEJqT0RRelpHWTRQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFWYTJwVFlYSkpVRWRYY0ZCSWRVUlVTekl6TjFOU2RrcE9lRWtsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRNMUlpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuYVVZc2VEVWZ2ajlwNHB5OUl2RjRRNlpDdXVsQTlTdlRtRmZMZkhHcHZIYkMtQ3ZKbFp3NXVJdEVZSG5VVUg3VXQ1TkJWY1FsS0R3d0M3bmk3UkdsZWpOQlBQajZIMHR2aEZyZVVhdEFfclpEelFiUk5sSDdPeGQwRzNsaDhCN1hPS0hVT1c0dG9CeVZUUWFoelR5Y0s0V3oyNDAwd2xIdFRaY0xsMS1NMmJ1MFN1SGQ0cmc3bTdZcDRBbVpTYTN4WHUxS0xvUnpCU2w5amtlRlgtaTFTbVhucHZ3NVBhU3NSaFJvZWpCYU1TOVhLd0xKb0xWaEU1MDNpZ3JkSTQ0eE1CRWlyM3c0dGVxMnFoRlpEaHVmcWlVUEh1Y3ZJUkZWMkJmX3k5SEVMWWlReHZ5c19UVE5pVXhZb0FUWFdUQU9VNkZDbVVIdmdlR1c1T0I3N0xSTEpn/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/98/9824c27679d3b27c5e1cb00a73adb6f4f8d556994111c12db3c5d61a0c843df8?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=UkjSarIPGWpPHuDTK237SRvJNxI%3D&Expires=1758876435 securityworker stdout | 2025-09-26 08:37:15,461 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,461 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,461 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,461 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:15,461 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,461 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:15,461 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:15,461 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:15,461 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:15,461 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:15,461 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:15,461 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:15,462 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,462 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:15,462 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:15,462 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876435 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:37:15,468 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ETTFMQ0pwWVhRaU9qRTNOVGc0TnpVNE16VXNJbVY0Y0NJNk1UYzFPRGczTmpRek5Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFIY1U1MVQxaDJVbXBEWjBseWEyMW5lalpzTkhoS1pFOUZWekFsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRNMUlpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuV3lnWDY5MHhrM3BjdGFEMmw2N2EwUkw3WW9BNG8zNnAycjZFS0F4el9hZGYzOThBWUc2Q0NaLWZqbXBrcXNHeG9LdU9OaDYyalY5cHAxY3Vjci1IVzluRmVsRWoxMXpEUmhtajRKU21MMlZlYzNqelFkaVRyNVVqN0h2clNYVmdTUzJJeTMyU2ZMSkVIdFZnbWc0VVdxVl9IdUNtUU5DaEZFT2NyVExQUkhJRlhUSU1HU2VtMEZodnZKbmdkNkZuY2QxUk5DZjFldVBhcHhnclIyVEFvb1lWZU9SbTZ2OV9aanZQZzhWem5sOHhPTENkYWhNY2IwbTR5MDMyNnplWlh6OTBEbzdpTzVodlNKVC1BNzk4NWE2LUYwTWc5LWlNOG5Cc0RQYlVPTVp2NmlwaDN1TktuZjFYenIxNFRBei1Ec3cyU0NzQm41Z2plUUw1QXBXaUlR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=GqNuOXvRjCgIrkmgz6l4xJdOEW0%3D&Expires=1758876435 securityworker stdout | 2025-09-26 08:37:15,468 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,468 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,468 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,468 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:15,468 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,468 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:15,468 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:15,468 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:15,468 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:15,468 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:15,468 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:15,468 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:15,468 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:15,468 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:15,468 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:15,468 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876435 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:37:15,474 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ETTFMQ0pwWVhRaU9qRTNOVGc0TnpVNE16VXNJbVY0Y0NJNk1UYzFPRGczTmpRek5Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFIY1U1MVQxaDJVbXBEWjBseWEyMW5lalpzTkhoS1pFOUZWekFsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRNMUlpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuV3lnWDY5MHhrM3BjdGFEMmw2N2EwUkw3WW9BNG8zNnAycjZFS0F4el9hZGYzOThBWUc2Q0NaLWZqbXBrcXNHeG9LdU9OaDYyalY5cHAxY3Vjci1IVzluRmVsRWoxMXpEUmhtajRKU21MMlZlYzNqelFkaVRyNVVqN0h2clNYVmdTUzJJeTMyU2ZMSkVIdFZnbWc0VVdxVl9IdUNtUU5DaEZFT2NyVExQUkhJRlhUSU1HU2VtMEZodnZKbmdkNkZuY2QxUk5DZjFldVBhcHhnclIyVEFvb1lWZU9SbTZ2OV9aanZQZzhWem5sOHhPTENkYWhNY2IwbTR5MDMyNnplWlh6OTBEbzdpTzVodlNKVC1BNzk4NWE2LUYwTWc5LWlNOG5Cc0RQYlVPTVp2NmlwaDN1TktuZjFYenIxNFRBei1Ec3cyU0NzQm41Z2plUUw1QXBXaUlR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=GqNuOXvRjCgIrkmgz6l4xJdOEW0%3D&Expires=1758876435 securityworker stdout | 2025-09-26 08:37:15,474 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:37:15,474 [86] [DEBUG] [util.secscan.v4.api] POSTing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_report gunicorn-registry stdout | 2025-09-26 08:37:15,527 [257] [DEBUG] [app] Starting request: urn:request:31c7ea7f-b21b-468f-83b4-79ab3402186b (/v2/testorg2/alpine/blobs/uploads/6aacfc70-cd82-4a0f-b85a-45330f4b270a) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:15,527 [257] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '6aacfc70-cd82-4a0f-b85a-45330f4b270a', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:15,527 [257] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:15,527 [257] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:15,528 [257] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:15,528 [257] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:15,528 [257] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:15,528 [257] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:15,528 [257] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:15,529 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,531 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,531 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,532 [257] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,533 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,534 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,535 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,536 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:15,537 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['6aacfc70-cd82-4a0f-b85a-45330f4b270a', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,538 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:15,538 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:15,538 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:15,540 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:15,540 [257] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/57981e1b-3fbe-4708-83e2-4acd1441ae1d', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:15,540 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,540 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,540 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,540 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,540 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,540 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,540 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,540 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,540 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:15,540 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:15,541 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:15,541 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:15,541 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,541 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,541 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,541 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/57981e1b-3fbe-4708-83e2-4acd1441ae1d?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/57981e1b-3fbe-4708-83e2-4acd1441ae1d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/57981e1b-3fbe-4708-83e2-4acd1441ae1d?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/57981e1b-3fbe-4708-83e2-4acd1441ae1d', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:15,541 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,541 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,541 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,541 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,541 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:15,541 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/57981e1b-3fbe-4708-83e2-4acd1441ae1d gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083715Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:15,541 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083715Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 2979807d7ffab3ee0f23ce4bb159d648552b3a0ede16c60062dbd186f7133600 gunicorn-registry stdout | 2025-09-26 08:37:15,541 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 49f5dbecaf92ecc1475d1f8fab401230e4151cfefcae5723022ff02a322bd6c1 gunicorn-registry stdout | 2025-09-26 08:37:15,541 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,542 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:15,542 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:15,549 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/57981e1b-3fbe-4708-83e2-4acd1441ae1d?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:15,549 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9cif-br519f-q4t', 'x-amz-id-2': 'mg0l9cif-br519f-q4t', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:15 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} buildlogsarchiver stdout | 2025-09-26 08:37:15,550 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} gunicorn-registry stdout | 2025-09-26 08:37:15,549 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/57981e1b-3fbe-4708-83e2-4acd1441ae1d68d650bbd73ec60008f93502' gunicorn-registry stdout | 2025-09-26 08:37:15,550 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,550 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:15,550 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,550 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9cif-br519f-q4t', 'HostId': 'mg0l9cif-br519f-q4t', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9cif-br519f-q4t', 'x-amz-id-2': 'mg0l9cif-br519f-q4t', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:15 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/57981e1b-3fbe-4708-83e2-4acd1441ae1d', 'UploadId': '68d650bbd73ec60008f93502'} gunicorn-registry stdout | 2025-09-26 08:37:15,550 [257] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:15,550 [257] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/57981e1b-3fbe-4708-83e2-4acd1441ae1d', 'UploadId': '68d650bbd73ec60008f93502'} gunicorn-registry stdout | 2025-09-26 08:37:15,550 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,550 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,550 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,550 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,551 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,551 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,551 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:15,551 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:15,551 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:15,551 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:15,551 [257] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,551 [257] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,551 [257] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,551 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/57981e1b-3fbe-4708-83e2-4acd1441ae1d', 'query_string': {'uploadId': '68d650bbd73ec60008f93502'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/57981e1b-3fbe-4708-83e2-4acd1441ae1d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/57981e1b-3fbe-4708-83e2-4acd1441ae1d?uploadId=68d650bbd73ec60008f93502', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/57981e1b-3fbe-4708-83e2-4acd1441ae1d', 'UploadId': '68d650bbd73ec60008f93502'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:15,551 [257] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,551 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,551 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,551 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,551 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:15,551 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/57981e1b-3fbe-4708-83e2-4acd1441ae1d gunicorn-registry stdout | uploadId=68d650bbd73ec60008f93502 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083715Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:15,551 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083715Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 27ac8245ff5bea8544eb54d995019a7af90ec15278adce7747e61f8412f27bd4 gunicorn-registry stdout | 2025-09-26 08:37:15,552 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 0b353b11068a1aed3ed2f22eacd288cae19559be2ca01b489ccf3939c211b3a1 gunicorn-registry stdout | 2025-09-26 08:37:15,552 [257] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,552 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:15,552 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:15,559 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/57981e1b-3fbe-4708-83e2-4acd1441ae1d?uploadId=68d650bbd73ec60008f93502 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:37:15,559 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9cip-bwz34f-k8k', 'x-amz-id-2': 'mg0l9cip-bwz34f-k8k', 'Date': 'Fri, 26 Sep 2025 08:37:15 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:15,559 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:15,559 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,559 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:15,559 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,559 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9cip-bwz34f-k8k', 'HostId': 'mg0l9cip-bwz34f-k8k', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9cip-bwz34f-k8k', 'x-amz-id-2': 'mg0l9cip-bwz34f-k8k', 'date': 'Fri, 26 Sep 2025 08:37:15 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:37:15,559 [257] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 6aacfc70-cd82-4a0f-b85a-45330f4b270a took 0.021494388580322266 seconds gunicorn-registry stdout | 2025-09-26 08:37:15,560 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['6aacfc70-cd82-4a0f-b85a-45330f4b270a', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,561 [257] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '6aacfc70-cd82-4a0f-b85a-45330f4b270a', 167, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwZGExYjJhZDIwNWMxMTIzZTRkYmI5MDM2OGU2MjVlOTI1ODQiXX19Yzc4ODA0NDVkMWI5ZWNkMzllZWYxM2VhOCcAAAAAAAAAAAQAAAAAAACO6PSngoaLMADcDAUNA++Fc6hBArhSxkrskxHShxijepRiLg==', 9, '{"chunks": [["uploads/689f7a7c-bf2c-4a02-ae53-ff48a632e76e", 0, 167]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 37, 15, 292899), None, None, 55]) gunicorn-registry stdout | 2025-09-26 08:37:15,562 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:15,562 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:15,562 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:15,563 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:15,563 [257] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/79/792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81'} gunicorn-registry stdout | 2025-09-26 08:37:15,563 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,563 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,564 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,564 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,564 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,564 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,564 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,564 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:15,564 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:15,564 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:15,564 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:15,564 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,564 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,564 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,564 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/79/792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/79/792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/79/792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/79/792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:15,564 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,564 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,564 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,564 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,564 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:15,564 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/79/792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083715Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:15,564 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083715Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 3f596cfd91a0597204b9ee430084542ab6f12ad88b7d6e3e299a44abd89c7388 gunicorn-registry stdout | 2025-09-26 08:37:15,565 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 92767ed9e4f9f571ad286c9b182e560b8a32940c5c326cf0d62be6d60a32eaff gunicorn-registry stdout | 2025-09-26 08:37:15,565 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,565 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:15,565 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:15,570 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/79/792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:37:15,570 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9cj2-c4oy0t-1466', 'x-amz-id-2': 'mg0l9cj2-c4oy0t-1466', 'Content-Type': 'application/xml', 'Content-Length': '339', 'Date': 'Fri, 26 Sep 2025 08:37:15 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:15,570 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:15,570 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,570 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:15,570 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,570 [257] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:37:15,570 [257] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:37:15,570 [257] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/79/792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81 gunicorn-registry stdout | 2025-09-26 08:37:15,571 [257] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:15,571 [257] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:15,571 [257] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:15,571 [257] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:37:15,572 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,572 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,572 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,572 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,572 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,572 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,572 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,572 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:15,572 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:15,572 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:15,572 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:15,572 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,572 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,572 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,572 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/689f7a7c-bf2c-4a02-ae53-ff48a632e76e', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/689f7a7c-bf2c-4a02-ae53-ff48a632e76e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/689f7a7c-bf2c-4a02-ae53-ff48a632e76e', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/689f7a7c-bf2c-4a02-ae53-ff48a632e76e'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:15,572 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,572 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,572 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,572 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,572 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,573 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:15,573 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/689f7a7c-bf2c-4a02-ae53-ff48a632e76e gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083715Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:15,573 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083715Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | fa82c3bc5c77a1ec900edd247d953ad82abc1de5291195deae96cfae020d08c6 gunicorn-registry stdout | 2025-09-26 08:37:15,573 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 0eba76921dc4c07020bdced31bdbb666bf44b220a600937926dbcf717e202c18 gunicorn-registry stdout | 2025-09-26 08:37:15,573 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,573 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,573 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:15,573 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:15,573 [257] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | 2025-09-26 08:37:15,600 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/689f7a7c-bf2c-4a02-ae53-ff48a632e76e HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:15,601 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9cjx-cn3xw5-19j8', 'x-amz-id-2': 'mg0l9cjx-cn3xw5-19j8', 'ETag': '"e6f09d8ec158ded8e277b62cc0fa10cc-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:15 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '167', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:15 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:15,601 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:15,601 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,601 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:15,601 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,601 [257] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/79/792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:37:15,601 [257] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/79/792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/79/792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/79/792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/689f7a7c-bf2c-4a02-ae53-ff48a632e76e'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/79/792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81', 'extra_args': {}, 'callbacks': [], 'size': 167} gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,602 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/79/792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/689f7a7c-bf2c-4a02-ae53-ff48a632e76e', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/79/792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/79/792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/689f7a7c-bf2c-4a02-ae53-ff48a632e76e', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/79/792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:15,603 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,603 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,603 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,603 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,603 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,603 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:15,603 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/79/792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/689f7a7c-bf2c-4a02-ae53-ff48a632e76e gunicorn-registry stdout | x-amz-date:20250926T083715Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:15,603 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083715Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 812c29d98f4f743de6a6aae69e74652f14bb2d5d72d1dcbad077b7875fe0762e gunicorn-registry stdout | 2025-09-26 08:37:15,603 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 22a2074f54f815b4c79c10dc68c4ddca85fd276f2b1377316686fe95928ce4bf gunicorn-registry stdout | 2025-09-26 08:37:15,603 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,603 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,603 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:15,603 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:15,604 [257] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:15,629 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/79/792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:37:15,629 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ck4-crm56r-pca', 'x-amz-id-2': 'mg0l9ck4-crm56r-pca', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:37:15 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:15,629 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:37:15.000Z"e6f09d8ec158ded8e277b62cc0fa10cc-1"' gunicorn-registry stdout | 2025-09-26 08:37:15,629 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,629 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:15,629 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:15,629 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:15,630 [257] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:15,630 [257] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 6aacfc70-cd82-4a0f-b85a-45330f4b270a with digest sha256:792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81 took 0.059601545333862305 seconds gunicorn-registry stdout | 2025-09-26 08:37:15,631 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['6aacfc70-cd82-4a0f-b85a-45330f4b270a', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,632 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,633 [257] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['ce5fc8d5-c12b-4a84-967a-0f6bea58496f', 167, None, True, True, 'sha256:792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81']) gunicorn-registry stdout | 2025-09-26 08:37:15,633 [257] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [56, 9]) gunicorn-registry stdout | 2025-09-26 08:37:15,634 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,634 [257] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [3, 56, datetime.datetime(2025, 9, 26, 8, 37, 15, 634777), datetime.datetime(2025, 9, 26, 9, 37, 15, 634762)]) gunicorn-registry stdout | 2025-09-26 08:37:15,635 [257] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [55]) gunicorn-registry stdout | 2025-09-26 08:37:15,637 [257] [DEBUG] [app] Ending request: urn:request:31c7ea7f-b21b-468f-83b4-79ab3402186b (/v2/testorg2/alpine/blobs/uploads/6aacfc70-cd82-4a0f-b85a-45330f4b270a) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:31c7ea7f-b21b-468f-83b4-79ab3402186b', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/6aacfc70-cd82-4a0f-b85a-45330f4b270a?digest=sha256:792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81', 'path': '/v2/testorg2/alpine/blobs/uploads/6aacfc70-cd82-4a0f-b85a-45330f4b270a', 'parameters': {'digest': 'sha256:792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:15,637 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:15,637 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:15 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/6aacfc70-cd82-4a0f-b85a-45330f4b270a?digest=sha256%3A792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.111 1853 0.111) gunicorn-registry stdout | 2025-09-26 08:37:15,637 [257] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:15 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/6aacfc70-cd82-4a0f-b85a-45330f4b270a?digest=sha256%3A792f1e44b8f950799c87241761336b244524de1ef04bc0023cb87f72cb30ad81 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" gunicorn-registry stdout | 2025-09-26 08:37:15,975 [256] [DEBUG] [app] Starting request: urn:request:fbbd1447-706f-407e-80d0-e8236e38f915 (/v2/testorg2/alpine/blobs/sha256:5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:15,975 [256] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:15,975 [256] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:15,975 [256] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:15,977 [256] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:15,977 [256] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:15,977 [256] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:15,977 [256] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:15,977 [256] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:15,978 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,979 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,980 [256] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:15,980 [256] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5_2 gunicorn-registry stdout | 2025-09-26 08:37:15,981 [256] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:15,982 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,985 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,985 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,987 [256] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,988 [256] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:15,989 [256] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5_2: None gunicorn-registry stdout | 2025-09-26 08:37:15,989 [256] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5_2: None gunicorn-registry stdout | 2025-09-26 08:37:15,989 [256] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:15,990 [256] [DEBUG] [app] Ending request: urn:request:fbbd1447-706f-407e-80d0-e8236e38f915 (/v2/testorg2/alpine/blobs/sha256:5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:fbbd1447-706f-407e-80d0-e8236e38f915', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5', 'path': '/v2/testorg2/alpine/blobs/sha256:5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:15,990 [256] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:15,990 [256] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:15,990 [256] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:15 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:15 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.016 1718 0.016) gunicorn-registry stdout | 2025-09-26 08:37:16,191 [251] [DEBUG] [app] Starting request: urn:request:fcb27eb5-1483-4151-9bbc-067185640f23 (/v2/testorg2/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:16,191 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:16,191 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:16,191 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:16,192 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:16,192 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:16,192 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:16,192 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:16,192 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:16,193 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,194 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,195 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,196 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,197 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,198 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,199 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:16,200 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,201 [251] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [3, '553c4514-0116-498b-ac5b-3c9953f4e21d', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 37, 16, 201423)]) gunicorn-registry stdout | 2025-09-26 08:37:16,203 [251] [DEBUG] [app] Ending request: urn:request:fcb27eb5-1483-4151-9bbc-067185640f23 (/v2/testorg2/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:fcb27eb5-1483-4151-9bbc-067185640f23', 'remote_addr': '10.131.2.20', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/', 'path': '/v2/testorg2/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:16,203 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:16,204 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:16,204 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:16 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:16 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.014 1697 0.014) gunicorn-registry stdout | 2025-09-26 08:37:16,245 [251] [DEBUG] [app] Starting request: urn:request:d2dd9dc0-119a-4eb2-893a-f300f6898d07 (/v2/testorg2/alpine/blobs/uploads/553c4514-0116-498b-ac5b-3c9953f4e21d) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:16,245 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '553c4514-0116-498b-ac5b-3c9953f4e21d', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:16,245 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:16,245 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:16,246 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:16,246 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:16,246 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:16,246 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:16,246 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:16,248 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,249 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,250 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,251 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,252 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,253 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,254 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,255 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:16,256 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['553c4514-0116-498b-ac5b-3c9953f4e21d', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,257 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:16,258 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:16,258 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:16,373 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:16,373 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:16,373 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,373 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,373 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,373 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,373 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,373 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,373 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,373 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,373 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:16,373 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:16,373 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:16,374 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:16,374 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,374 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,374 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,374 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:16,374 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,374 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,374 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,374 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,374 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:16,374 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083716Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:16,374 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083716Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 7e34ea5fee83587d09dd574ab9258d42a729883101961ad9b6ed817cf1f4415c gunicorn-registry stdout | 2025-09-26 08:37:16,374 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | fb02fb6002804217a80221e57c57fdf49050dbe2a70f6fde8d48a621ef9487cc gunicorn-registry stdout | 2025-09-26 08:37:16,374 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,375 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:16,375 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:16,381 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:16,381 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9d5k-8zl2c8-gt4', 'x-amz-id-2': 'mg0l9d5k-8zl2c8-gt4', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:16 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:16,381 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a68d650bcd73ec60008f93505' gunicorn-registry stdout | 2025-09-26 08:37:16,381 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,381 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:16,381 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,381 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9d5k-8zl2c8-gt4', 'HostId': 'mg0l9d5k-8zl2c8-gt4', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9d5k-8zl2c8-gt4', 'x-amz-id-2': 'mg0l9d5k-8zl2c8-gt4', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:16 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a', 'UploadId': '68d650bcd73ec60008f93505'} gunicorn-registry stdout | 2025-09-26 08:37:16,381 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:16,585 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:16,585 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:16,585 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a', 'UploadId': '68d650bcd73ec60008f93505', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89a5d50>, 'ContentLength': 3219038} gunicorn-registry stdout | 2025-09-26 08:37:16,585 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,585 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,585 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,585 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,585 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,585 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,585 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,585 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,585 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:16,586 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:16,586 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:16,586 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:16,586 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,591 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,592 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:16,592 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,592 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,592 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a', 'query_string': {'uploadId': '68d650bcd73ec60008f93505', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '3219038', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'OeMEN14rR98ptsCfDhHE/A==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b89a5d50>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a?uploadId=68d650bcd73ec60008f93505&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a', 'UploadId': '68d650bcd73ec60008f93505', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89a5d50>, 'ContentLength': 3219038}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:16,592 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,592 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,592 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,592 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,592 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:16,592 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a gunicorn-registry stdout | partNumber=1&uploadId=68d650bcd73ec60008f93505 gunicorn-registry stdout | content-length:3219038 gunicorn-registry stdout | content-md5:OeMEN14rR98ptsCfDhHE/A== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083716Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:16,592 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083716Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 75e6ee4a7271ee84e2b8653a99b34838c39e4c04f17e562be843cf2923ff7243 gunicorn-registry stdout | 2025-09-26 08:37:16,592 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | e880362456bb8361291c88831b384cc9fcfafb17e4bfdf2ea78b55c094e70db2 gunicorn-registry stdout | 2025-09-26 08:37:16,592 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,592 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:16,593 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:16,594 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:37:16,596 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:37:16,868 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a?uploadId=68d650bcd73ec60008f93505&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:16,869 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9dbn-cm2ffi-s4k', 'x-amz-id-2': 'mg0l9dbn-cm2ffi-s4k', 'ETag': '"39e304375e2b47df29b6c09f0e11c4fc"', 'Date': 'Fri, 26 Sep 2025 08:37:16 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:16,869 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:16,869 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,869 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:16,869 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,869 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9dbn-cm2ffi-s4k', 'HostId': 'mg0l9dbn-cm2ffi-s4k', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9dbn-cm2ffi-s4k', 'x-amz-id-2': 'mg0l9dbn-cm2ffi-s4k', 'etag': '"39e304375e2b47df29b6c09f0e11c4fc"', 'date': 'Fri, 26 Sep 2025 08:37:16 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"39e304375e2b47df29b6c09f0e11c4fc"'} gunicorn-registry stdout | 2025-09-26 08:37:16,869 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a', 'UploadId': '68d650bcd73ec60008f93505', 'MultipartUpload': {'Parts': [{'ETag': '"39e304375e2b47df29b6c09f0e11c4fc"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:16,869 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,869 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,869 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,869 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,869 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,869 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,869 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,869 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:16,869 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:16,870 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:16,870 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:16,870 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,870 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,870 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,870 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a', 'query_string': {'uploadId': '68d650bcd73ec60008f93505'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"39e304375e2b47df29b6c09f0e11c4fc"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a?uploadId=68d650bcd73ec60008f93505', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a', 'UploadId': '68d650bcd73ec60008f93505', 'MultipartUpload': {'Parts': [{'ETag': '"39e304375e2b47df29b6c09f0e11c4fc"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:16,870 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,870 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,870 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,870 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,870 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:16,870 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a gunicorn-registry stdout | uploadId=68d650bcd73ec60008f93505 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:93a100997b044d61227a675f4a2eaf27531d457f98f77d428b3d632c2d5e60d3 gunicorn-registry stdout | x-amz-date:20250926T083716Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 93a100997b044d61227a675f4a2eaf27531d457f98f77d428b3d632c2d5e60d3 gunicorn-registry stdout | 2025-09-26 08:37:16,870 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083716Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | f2919fab066be67c8901988271426aebc9b09952556a27a0554adaba92b53bc9 gunicorn-registry stdout | 2025-09-26 08:37:16,871 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 9f5aa356180212f60d24c0c1ec5697d21053e8b5563b191a3315074816adf8ee gunicorn-registry stdout | 2025-09-26 08:37:16,871 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,871 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:16,871 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:16,887 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a?uploadId=68d650bcd73ec60008f93505 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:16,887 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9djd-nwvfw-13qq', 'x-amz-id-2': 'mg0l9djd-nwvfw-13qq', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:16 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:16,887 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a"53065aa7e9d0f5386467371913d3848f-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a?uploadId=68d650bcd73ec60008f93505' gunicorn-registry stdout | 2025-09-26 08:37:16,887 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,888 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,888 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:16,888 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,888 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9djd-nwvfw-13qq', 'HostId': 'mg0l9djd-nwvfw-13qq', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9djd-nwvfw-13qq', 'x-amz-id-2': 'mg0l9djd-nwvfw-13qq', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:16 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a?uploadId=68d650bcd73ec60008f93505', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a', 'ETag': '"53065aa7e9d0f5386467371913d3848f-1"'} gunicorn-registry stdout | 2025-09-26 08:37:16,888 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:16,889 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:16,889 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 3219038 bytes to blob 553c4514-0116-498b-ac5b-3c9953f4e21d took 0.6310694217681885 seconds gunicorn-registry stdout | 2025-09-26 08:37:16,889 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['553c4514-0116-498b-ac5b-3c9953f4e21d', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,891 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '553c4514-0116-498b-ac5b-3c9953f4e21d', 3219038, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENw5Gn4w+Tt/Keb3OQmN/m28v8HAAD//1uyJbgAdlYApmo3/B/xv44Cvk0ZT8cfu/v+64r/t6vVg9zwh7qi/tb9fx4AAAAAAAAAAPKIAQAAAAAm0w0SLhiY1pE+RF/VUiuuFJ6LWI3fKa39DRCONRPtsJRiLg==', 9, '{"chunks": [["uploads/e4366787-f755-43cf-982c-3d160fe9dc6a", 0, 3219038]]}', 1, 5666304, datetime.datetime(2025, 9, 26, 8, 37, 16, 201423), None, None, 56]) gunicorn-registry stdout | 2025-09-26 08:37:16,893 [251] [DEBUG] [app] Ending request: urn:request:d2dd9dc0-119a-4eb2-893a-f300f6898d07 (/v2/testorg2/alpine/blobs/uploads/553c4514-0116-498b-ac5b-3c9953f4e21d) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:d2dd9dc0-119a-4eb2-893a-f300f6898d07', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/553c4514-0116-498b-ac5b-3c9953f4e21d', 'path': '/v2/testorg2/alpine/blobs/uploads/553c4514-0116-498b-ac5b-3c9953f4e21d', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:16,893 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:16,893 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:16,894 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:16 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/553c4514-0116-498b-ac5b-3c9953f4e21d HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:16 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/553c4514-0116-498b-ac5b-3c9953f4e21d HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.651 3220818 0.650) gunicorn-registry stdout | 2025-09-26 08:37:16,934 [251] [DEBUG] [app] Starting request: urn:request:ce137733-c032-4231-9206-08678ae8a1c2 (/v2/testorg2/alpine/blobs/uploads/553c4514-0116-498b-ac5b-3c9953f4e21d) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:16,935 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '553c4514-0116-498b-ac5b-3c9953f4e21d', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:16,935 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:16,935 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:16,935 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:16,935 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:16,936 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:16,936 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:16,936 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:16,937 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,938 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,939 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,940 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,941 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,942 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,942 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,944 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:16,944 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['553c4514-0116-498b-ac5b-3c9953f4e21d', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,945 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:16,945 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:16,945 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:16,946 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:16,946 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/26114e43-d49a-457a-bd2c-bf08e9dff6be', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:16,946 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,946 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,946 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,946 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,946 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,946 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,946 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,947 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,947 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:16,947 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:16,947 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:16,947 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:16,947 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,947 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,947 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,947 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/26114e43-d49a-457a-bd2c-bf08e9dff6be?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/26114e43-d49a-457a-bd2c-bf08e9dff6be', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/26114e43-d49a-457a-bd2c-bf08e9dff6be?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/26114e43-d49a-457a-bd2c-bf08e9dff6be', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:16,947 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,947 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,947 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,947 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,947 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:16,947 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/26114e43-d49a-457a-bd2c-bf08e9dff6be gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083716Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:16,947 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083716Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 7d4a4994584ea624ed44ce1337dcae9b1b8ee1bc714da85ef89b5e2b2fe6de37 gunicorn-registry stdout | 2025-09-26 08:37:16,948 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 6184727889920fed6a914651a8c1a7c0f7bc9d49fcef87aedb2ab65e7eea4de5 gunicorn-registry stdout | 2025-09-26 08:37:16,948 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,948 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:16,948 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:16,954 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/26114e43-d49a-457a-bd2c-bf08e9dff6be?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:16,954 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9dlh-1xev8x-776', 'x-amz-id-2': 'mg0l9dlh-1xev8x-776', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:16 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:16,954 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/26114e43-d49a-457a-bd2c-bf08e9dff6be68d650bcd73ec60008f9350f' gunicorn-registry stdout | 2025-09-26 08:37:16,954 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,954 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:16,954 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,954 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9dlh-1xev8x-776', 'HostId': 'mg0l9dlh-1xev8x-776', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9dlh-1xev8x-776', 'x-amz-id-2': 'mg0l9dlh-1xev8x-776', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:16 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/26114e43-d49a-457a-bd2c-bf08e9dff6be', 'UploadId': '68d650bcd73ec60008f9350f'} gunicorn-registry stdout | 2025-09-26 08:37:16,955 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:16,955 [251] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/26114e43-d49a-457a-bd2c-bf08e9dff6be', 'UploadId': '68d650bcd73ec60008f9350f'} gunicorn-registry stdout | 2025-09-26 08:37:16,955 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,955 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,955 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,955 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,955 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,955 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,955 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:16,955 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:16,955 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:16,955 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:16,956 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,956 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,956 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,956 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/26114e43-d49a-457a-bd2c-bf08e9dff6be', 'query_string': {'uploadId': '68d650bcd73ec60008f9350f'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/26114e43-d49a-457a-bd2c-bf08e9dff6be', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/26114e43-d49a-457a-bd2c-bf08e9dff6be?uploadId=68d650bcd73ec60008f9350f', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/26114e43-d49a-457a-bd2c-bf08e9dff6be', 'UploadId': '68d650bcd73ec60008f9350f'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:16,956 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,956 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,956 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,956 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,956 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:16,956 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/26114e43-d49a-457a-bd2c-bf08e9dff6be gunicorn-registry stdout | uploadId=68d650bcd73ec60008f9350f gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083716Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:16,956 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083716Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | b8b1302ca30317eb14b4db495696fa6dce6b072d0aa7b5b373947ba8fb1e73eb gunicorn-registry stdout | 2025-09-26 08:37:16,956 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 4130a4368ef02548a1c11a0df980c60e3735f3b290cfde99ab42acbbc32c21a6 gunicorn-registry stdout | 2025-09-26 08:37:16,956 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,956 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:16,957 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:16,963 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/26114e43-d49a-457a-bd2c-bf08e9dff6be?uploadId=68d650bcd73ec60008f9350f HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:37:16,963 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9dlq-22kwsv-1caw', 'x-amz-id-2': 'mg0l9dlq-22kwsv-1caw', 'Date': 'Fri, 26 Sep 2025 08:37:16 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:16,963 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:16,963 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,963 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:16,964 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,964 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9dlq-22kwsv-1caw', 'HostId': 'mg0l9dlq-22kwsv-1caw', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9dlq-22kwsv-1caw', 'x-amz-id-2': 'mg0l9dlq-22kwsv-1caw', 'date': 'Fri, 26 Sep 2025 08:37:16 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:37:16,964 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 553c4514-0116-498b-ac5b-3c9953f4e21d took 0.018522977828979492 seconds gunicorn-registry stdout | 2025-09-26 08:37:16,964 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['553c4514-0116-498b-ac5b-3c9953f4e21d', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:16,965 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '553c4514-0116-498b-ac5b-3c9953f4e21d', 3219038, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENw5Gn4w+Tt/Keb3OQmN/m28v8HAAD//1uyJbgAdlYApmo3/B/xv44Cvk0ZT8cfu/v+64r/t6vVg9zwh7qi/tb9fx4AAAAAAAAAAPKIAQAAAAAm0w0SLhiY1pE+RF/VUiuuFJ6LWI3fKa39DRCONRPtsJRiLg==', 9, '{"chunks": [["uploads/e4366787-f755-43cf-982c-3d160fe9dc6a", 0, 3219038]]}', 2, 5666304, datetime.datetime(2025, 9, 26, 8, 37, 16, 201423), None, None, 56]) gunicorn-registry stdout | 2025-09-26 08:37:16,968 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:16,968 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:16,968 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:16,969 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:16,969 [251] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5'} gunicorn-registry stdout | 2025-09-26 08:37:16,969 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,969 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,969 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,969 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,969 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,969 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,969 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,969 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:16,969 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:16,969 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:16,970 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:16,970 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,970 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,970 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,970 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:16,970 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,970 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,970 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,970 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,970 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:16,970 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083716Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:16,970 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083716Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 1bc22805d7e8fc2b9d3ada478dc5e9ef58d0b5f0f38601bcc0644f1d0e7b3a62 gunicorn-registry stdout | 2025-09-26 08:37:16,970 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | e0fb4e19644fec41a67d7919b54d147f0923bbc89d7a0b36c712e03c5dd9998d gunicorn-registry stdout | 2025-09-26 08:37:16,970 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,970 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:16,971 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:16,976 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:37:16,976 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9dm3-2au6b4-wu', 'x-amz-id-2': 'mg0l9dm3-2au6b4-wu', 'Content-Type': 'application/xml', 'Content-Length': '337', 'Date': 'Fri, 26 Sep 2025 08:37:16 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:16,976 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:16,976 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,976 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:16,976 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,976 [251] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:37:16,976 [251] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:37:16,976 [251] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5 gunicorn-registry stdout | 2025-09-26 08:37:16,976 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:16,977 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:16,977 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:16,977 [251] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:37:16,977 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,977 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,977 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,977 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,977 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,977 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,977 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,977 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:16,977 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:16,977 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:16,977 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:16,977 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,977 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,977 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,977 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:16,978 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,978 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,978 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,978 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,978 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,978 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:16,978 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083716Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:16,978 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083716Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 64c83f4a703a2633caffc20f260c0bf0ce9aada35c4c8a8c00a89e4c30d78b44 gunicorn-registry stdout | 2025-09-26 08:37:16,978 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 0b85bd50e80cdcd9da189309678a762a5909b694fd827971bc637b7325a10b34 gunicorn-registry stdout | 2025-09-26 08:37:16,978 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,978 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,978 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:16,978 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:16,983 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:16,983 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9dmb-2fpc7m-2lr', 'x-amz-id-2': 'mg0l9dmb-2fpc7m-2lr', 'ETag': '"53065aa7e9d0f5386467371913d3848f-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:16 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '3219038', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:16 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:16,983 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:16,984 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,984 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:16,984 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,984 [251] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:37:16,984 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:16,984 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:16,984 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:16,984 [251] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5', 'extra_args': {}, 'callbacks': [], 'size': 3219038} gunicorn-registry stdout | 2025-09-26 08:37:16,984 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,984 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,985 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:16,986 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e4366787-f755-43cf-982c-3d160fe9dc6a gunicorn-registry stdout | x-amz-date:20250926T083716Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:16,986 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083716Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | bfa8c667d866f61f38be0f20b17f9bfdb9aa4787372f0898a4d2c5ad89e78044 gunicorn-registry stdout | 2025-09-26 08:37:16,986 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 7e1a9e6dd856936b619000806c23e8edb27cf24d4f7d989ecb8d7219258df767 gunicorn-registry stdout | 2025-09-26 08:37:16,986 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,986 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:16,986 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:16,986 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:16,986 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:17,012 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:37:17,012 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9dmj-2kc3me-ohh', 'x-amz-id-2': 'mg0l9dmj-2kc3me-ohh', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:37:17 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:17,012 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:37:17.000Z"53065aa7e9d0f5386467371913d3848f-1"' gunicorn-registry stdout | 2025-09-26 08:37:17,013 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,013 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,013 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:17,013 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,013 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:17,013 [251] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 553c4514-0116-498b-ac5b-3c9953f4e21d with digest sha256:5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5 took 0.03721880912780762 seconds gunicorn-registry stdout | 2025-09-26 08:37:17,014 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['553c4514-0116-498b-ac5b-3c9953f4e21d', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,015 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,016 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['cc0e4b2e-4918-4fe9-abb7-594c5ba18749', 3219038, 5666304, True, True, 'sha256:5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5']) gunicorn-registry stdout | 2025-09-26 08:37:17,017 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [57, 9]) gunicorn-registry stdout | 2025-09-26 08:37:17,017 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,018 [251] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [3, 57, datetime.datetime(2025, 9, 26, 8, 37, 17, 18165), datetime.datetime(2025, 9, 26, 9, 37, 17, 18150)]) gunicorn-registry stdout | 2025-09-26 08:37:17,018 [251] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [56]) gunicorn-registry stdout | 2025-09-26 08:37:17,020 [251] [DEBUG] [app] Ending request: urn:request:ce137733-c032-4231-9206-08678ae8a1c2 (/v2/testorg2/alpine/blobs/uploads/553c4514-0116-498b-ac5b-3c9953f4e21d) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:ce137733-c032-4231-9206-08678ae8a1c2', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/553c4514-0116-498b-ac5b-3c9953f4e21d?digest=sha256:5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5', 'path': '/v2/testorg2/alpine/blobs/uploads/553c4514-0116-498b-ac5b-3c9953f4e21d', 'parameters': {'digest': 'sha256:5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:17,020 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:17,020 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:17,021 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:17 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/553c4514-0116-498b-ac5b-3c9953f4e21d?digest=sha256%3A5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:17 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/553c4514-0116-498b-ac5b-3c9953f4e21d?digest=sha256%3A5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.087 1853 0.087) gunicorn-registry stdout | 2025-09-26 08:37:17,160 [258] [DEBUG] [app] Starting request: urn:request:0a84c562-03db-4d62-9dde-fbd148cfdecf (/v2/testorg2/alpine/blobs/sha256:8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:17,160 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:17,160 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:17,160 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:17,161 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:17,161 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:17,161 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:17,161 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:17,161 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:17,162 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,164 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,166 [258] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:17,166 [258] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c_2 gunicorn-registry stdout | 2025-09-26 08:37:17,166 [258] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:17,167 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,169 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,170 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,171 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,171 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,172 [258] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c_2: None gunicorn-registry stdout | 2025-09-26 08:37:17,172 [258] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c_2: None gunicorn-registry stdout | 2025-09-26 08:37:17,172 [258] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:17,173 [258] [DEBUG] [app] Ending request: urn:request:0a84c562-03db-4d62-9dde-fbd148cfdecf (/v2/testorg2/alpine/blobs/sha256:8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:0a84c562-03db-4d62-9dde-fbd148cfdecf', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c', 'path': '/v2/testorg2/alpine/blobs/sha256:8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:17,173 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:17,173 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:17,173 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:17 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:17 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.015 1718 0.015) gunicorn-registry stdout | 2025-09-26 08:37:17,214 [258] [DEBUG] [app] Starting request: urn:request:98f48c75-c7e6-4911-a393-6170868f7efa (/v2/testorg2/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:17,214 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:17,214 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:17,214 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:17,215 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:17,215 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:17,215 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:17,215 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:17,215 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:17,216 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,217 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,218 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,219 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,220 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,221 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,222 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:17,223 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,224 [258] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [3, '4d582d86-fa60-4c49-8c29-8c9b415f392d', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 37, 17, 223864)]) gunicorn-registry stdout | 2025-09-26 08:37:17,226 [258] [DEBUG] [app] Ending request: urn:request:98f48c75-c7e6-4911-a393-6170868f7efa (/v2/testorg2/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:98f48c75-c7e6-4911-a393-6170868f7efa', 'remote_addr': '10.131.2.20', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/', 'path': '/v2/testorg2/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:17,226 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:17,226 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:17,226 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:17 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:17 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.013 1697 0.013) buildlogsarchiver stdout | 2025-09-26 08:37:17,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:37:17,375 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:47.375102+00:00 (in 29.999541 seconds) buildlogsarchiver stdout | 2025-09-26 08:37:17,375 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:47 GMT)" (scheduled at 2025-09-26 08:37:17.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:37:17,376 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 37, 17, 375881), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:37:17,383 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:37:17,383 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:37:17,383 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:47 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:37:17,496 [251] [DEBUG] [app] Starting request: urn:request:566fb3ca-a657-41b5-85ec-ded8db02f3cd (/v2/testorg2/alpine/blobs/uploads/4d582d86-fa60-4c49-8c29-8c9b415f392d) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:17,496 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '4d582d86-fa60-4c49-8c29-8c9b415f392d', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:17,496 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:17,496 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:17,497 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:17,497 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:17,497 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:17,497 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:17,498 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:17,498 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,500 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,500 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,502 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,503 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,503 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,505 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,506 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:17,507 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['4d582d86-fa60-4c49-8c29-8c9b415f392d', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,508 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:17,508 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:17,508 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:17,509 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:17,509 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/2ebdb3f5-620e-4a3b-9512-9bedd338cc09', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:17,509 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,509 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,510 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,510 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,510 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,510 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,510 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,510 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,510 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:17,510 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:17,510 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:17,510 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:17,510 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,510 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,510 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,510 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/2ebdb3f5-620e-4a3b-9512-9bedd338cc09?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/2ebdb3f5-620e-4a3b-9512-9bedd338cc09', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/2ebdb3f5-620e-4a3b-9512-9bedd338cc09?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/2ebdb3f5-620e-4a3b-9512-9bedd338cc09', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:17,510 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,510 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,510 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,510 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,511 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:17,511 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/2ebdb3f5-620e-4a3b-9512-9bedd338cc09 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083717Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:17,511 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083717Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 423c3e03d6089d55d629d4b26869c5f06b18f14c827ff3c1beb271786d7b09e8 gunicorn-registry stdout | 2025-09-26 08:37:17,511 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 5bfa0a9553bec650642de7a4938706a05071057a05cae06659fdfe83f1d36ed8 gunicorn-registry stdout | 2025-09-26 08:37:17,511 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,511 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:17,511 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:17,518 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/2ebdb3f5-620e-4a3b-9512-9bedd338cc09?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:17,518 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9e15-b90a30-qdx', 'x-amz-id-2': 'mg0l9e15-b90a30-qdx', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:17 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:17,518 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/2ebdb3f5-620e-4a3b-9512-9bedd338cc0968d650bdd73ec60008f93519' gunicorn-registry stdout | 2025-09-26 08:37:17,518 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,518 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:17,519 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,519 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9e15-b90a30-qdx', 'HostId': 'mg0l9e15-b90a30-qdx', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9e15-b90a30-qdx', 'x-amz-id-2': 'mg0l9e15-b90a30-qdx', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:17 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/2ebdb3f5-620e-4a3b-9512-9bedd338cc09', 'UploadId': '68d650bdd73ec60008f93519'} gunicorn-registry stdout | 2025-09-26 08:37:17,519 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:17,519 [251] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/2ebdb3f5-620e-4a3b-9512-9bedd338cc09', 'UploadId': '68d650bdd73ec60008f93519'} gunicorn-registry stdout | 2025-09-26 08:37:17,519 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,519 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,519 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,519 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,519 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,519 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,519 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:17,520 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:17,520 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:17,520 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:17,520 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,520 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,520 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,520 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/2ebdb3f5-620e-4a3b-9512-9bedd338cc09', 'query_string': {'uploadId': '68d650bdd73ec60008f93519'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/2ebdb3f5-620e-4a3b-9512-9bedd338cc09', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/2ebdb3f5-620e-4a3b-9512-9bedd338cc09?uploadId=68d650bdd73ec60008f93519', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/2ebdb3f5-620e-4a3b-9512-9bedd338cc09', 'UploadId': '68d650bdd73ec60008f93519'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:17,520 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,520 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,520 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,520 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,520 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:17,520 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/2ebdb3f5-620e-4a3b-9512-9bedd338cc09 gunicorn-registry stdout | uploadId=68d650bdd73ec60008f93519 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083717Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:17,520 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083717Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 1a1a9dd798a13b0d38e3cb93c16a43e32e7b594f34009dd39a510bd792c3cdf5 gunicorn-registry stdout | 2025-09-26 08:37:17,521 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 3e3cfe1da551fc35404d89176ca6c39280500c00d38cf8e087319153a532bd51 gunicorn-registry stdout | 2025-09-26 08:37:17,521 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,521 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:17,522 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:17,528 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/2ebdb3f5-620e-4a3b-9512-9bedd338cc09?uploadId=68d650bdd73ec60008f93519 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:37:17,529 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9e1f-bezf4e-13wj', 'x-amz-id-2': 'mg0l9e1f-bezf4e-13wj', 'Date': 'Fri, 26 Sep 2025 08:37:17 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:17,529 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:17,529 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,529 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:17,529 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,529 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9e1f-bezf4e-13wj', 'HostId': 'mg0l9e1f-bezf4e-13wj', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9e1f-bezf4e-13wj', 'x-amz-id-2': 'mg0l9e1f-bezf4e-13wj', 'date': 'Fri, 26 Sep 2025 08:37:17 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:37:17,529 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 4d582d86-fa60-4c49-8c29-8c9b415f392d took 0.021128416061401367 seconds gunicorn-registry stdout | 2025-09-26 08:37:17,530 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['4d582d86-fa60-4c49-8c29-8c9b415f392d', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,531 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '4d582d86-fa60-4c49-8c29-8c9b415f392d', 593, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwfSwidmFyaWFudCI6InY3In03OThjYjQ4YTMxMDM0ZWM1OGRhODIxOTE5YjYxZDA1N2VmMDFhYmM2YzM4MzkiXREAAAAAAAAAABIAAAAAAAAdN4R+whnVjySOecpG+6TRFylorpLFB9Hs8ogtQjXbZJRiLg==', 9, '{"chunks": [["uploads/694df9cd-88c2-4472-aebe-151e89d21210", 0, 593]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 37, 17, 223864), None, None, 57]) gunicorn-registry stdout | 2025-09-26 08:37:17,532 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:17,532 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:17,532 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:17,533 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:17,534 [251] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/8c/8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c'} gunicorn-registry stdout | 2025-09-26 08:37:17,534 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,534 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,534 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,534 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,534 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,534 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,534 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,534 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:17,534 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:17,534 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:17,534 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:17,534 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,534 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,534 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,534 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/8c/8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/8c/8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/8c/8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/8c/8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:17,534 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,534 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,535 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,535 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,535 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:17,535 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/8c/8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083717Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:17,535 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083717Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 0c76f2ad963f03edd95abcb83cf98a0799104147f8fad11f6581196b2f84263f gunicorn-registry stdout | 2025-09-26 08:37:17,535 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 9708d2f8705dd3349dc637386eaeba02a55bfb378050ec942b85b1347b006690 gunicorn-registry stdout | 2025-09-26 08:37:17,535 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,535 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:17,535 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:17,540 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/8c/8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:37:17,540 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9e1s-bmyzq3-10h9', 'x-amz-id-2': 'mg0l9e1s-bmyzq3-10h9', 'Content-Type': 'application/xml', 'Content-Length': '339', 'Date': 'Fri, 26 Sep 2025 08:37:17 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:17,540 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:17,540 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,540 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:17,541 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,541 [251] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:37:17,541 [251] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:37:17,541 [251] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/8c/8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c gunicorn-registry stdout | 2025-09-26 08:37:17,541 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:17,541 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:17,541 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:17,541 [251] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:37:17,541 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,541 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,541 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,541 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,542 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,542 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,542 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,542 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:17,542 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:17,542 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:17,542 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:17,542 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,542 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,542 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,542 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/694df9cd-88c2-4472-aebe-151e89d21210', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/694df9cd-88c2-4472-aebe-151e89d21210', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/694df9cd-88c2-4472-aebe-151e89d21210', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/694df9cd-88c2-4472-aebe-151e89d21210'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:17,542 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,542 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,542 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,542 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,542 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,542 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:17,542 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/694df9cd-88c2-4472-aebe-151e89d21210 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083717Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:17,542 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083717Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | bff15473327a481247c998e849187e49364f6ed42c84b23fc4c2b1b9b8aa3ec3 gunicorn-registry stdout | 2025-09-26 08:37:17,542 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 1164edf087b9da96d0d643cebf8f3e1cce48168d7acb1f1e76340b8c86907eba gunicorn-registry stdout | 2025-09-26 08:37:17,543 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,543 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,543 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:17,543 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:17,547 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/694df9cd-88c2-4472-aebe-151e89d21210 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:17,547 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9e20-brkais-15xi', 'x-amz-id-2': 'mg0l9e20-brkais-15xi', 'ETag': '"189fa31f0a77a5767964ce4630e61481-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:17 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '593', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:17 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:17,547 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:17,548 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,548 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:17,548 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,548 [251] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/8c/8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:37:17,548 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:17,548 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/8c/8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:17,548 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/8c/8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:17,548 [251] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/8c/8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/694df9cd-88c2-4472-aebe-151e89d21210'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/8c/8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c', 'extra_args': {}, 'callbacks': [], 'size': 593} gunicorn-registry stdout | 2025-09-26 08:37:17,548 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,548 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,548 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,548 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,548 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,548 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,548 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,548 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,548 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,548 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,549 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:17,549 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:17,549 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:17,549 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:17,549 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,549 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,549 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,549 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/8c/8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/694df9cd-88c2-4472-aebe-151e89d21210', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/8c/8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/8c/8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/694df9cd-88c2-4472-aebe-151e89d21210', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/8c/8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:17,549 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,549 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,549 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,549 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,549 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,549 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:17,549 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/8c/8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/694df9cd-88c2-4472-aebe-151e89d21210 gunicorn-registry stdout | x-amz-date:20250926T083717Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:17,549 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083717Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 51f6e18630545accc0920fae7292583449cbe69e8f99847dbdea0cee143f6535 gunicorn-registry stdout | 2025-09-26 08:37:17,549 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 0d8713d62ee6c72778fa47b6e17254ff177162a017ac58ab3447f4f084cc0b5f gunicorn-registry stdout | 2025-09-26 08:37:17,549 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,550 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,550 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:17,550 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:17,550 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:17,576 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/8c/8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:37:17,576 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9e27-bvsvi0-1cta', 'x-amz-id-2': 'mg0l9e27-bvsvi0-1cta', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:37:17 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:17,576 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:37:17.000Z"189fa31f0a77a5767964ce4630e61481-1"' gunicorn-registry stdout | 2025-09-26 08:37:17,576 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,576 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:17,576 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:17,576 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:17,576 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:17,577 [251] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 4d582d86-fa60-4c49-8c29-8c9b415f392d with digest sha256:8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c took 0.03663134574890137 seconds gunicorn-registry stdout | 2025-09-26 08:37:17,578 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['4d582d86-fa60-4c49-8c29-8c9b415f392d', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,579 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,580 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['4225f69b-0f67-49b8-b880-b3e74cd339d9', 593, None, True, True, 'sha256:8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c']) gunicorn-registry stdout | 2025-09-26 08:37:17,580 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [58, 9]) gunicorn-registry stdout | 2025-09-26 08:37:17,581 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:17,582 [251] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [3, 58, datetime.datetime(2025, 9, 26, 8, 37, 17, 582008), datetime.datetime(2025, 9, 26, 9, 37, 17, 581994)]) gunicorn-registry stdout | 2025-09-26 08:37:17,582 [251] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [57]) gunicorn-registry stdout | 2025-09-26 08:37:17,584 [251] [DEBUG] [app] Ending request: urn:request:566fb3ca-a657-41b5-85ec-ded8db02f3cd (/v2/testorg2/alpine/blobs/uploads/4d582d86-fa60-4c49-8c29-8c9b415f392d) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:566fb3ca-a657-41b5-85ec-ded8db02f3cd', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/4d582d86-fa60-4c49-8c29-8c9b415f392d?digest=sha256:8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c', 'path': '/v2/testorg2/alpine/blobs/uploads/4d582d86-fa60-4c49-8c29-8c9b415f392d', 'parameters': {'digest': 'sha256:8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:17,584 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:17,584 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:17,585 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:17 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/4d582d86-fa60-4c49-8c29-8c9b415f392d?digest=sha256%3A8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:17 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/4d582d86-fa60-4c49-8c29-8c9b415f392d?digest=sha256%3A8c97401b6aceb287a0234dc188c4510d98adfd6952b403bd07c3a64165171c5c HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.090 1853 0.090) manifestsubjectbackfillworker stdout | 2025-09-26 08:37:17,986 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:37:17,986 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:33.984400+00:00 (in 15.998139 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:37:17,986 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:17 GMT)" (scheduled at 2025-09-26 08:37:17.985743+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:37:17,986 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."artifact_type_backfilled" = %s) OR ("t1"."artifact_type_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:37:17,993 [64] [DEBUG] [__main__] Manifest artifact_type backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:37:17,993 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:37:17,993 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:17 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:37:17,996 [257] [DEBUG] [app] Starting request: urn:request:f5e2e7a1-a68e-4235-8310-bbc4dbf6dc45 (/v2/testorg2/alpine/blobs/sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:17,996 [257] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:17,996 [257] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:17,996 [257] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:17,997 [257] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:17,997 [257] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:17,998 [257] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:17,998 [257] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:17,998 [257] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:17,998 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,000 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,001 [257] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:18,001 [257] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71_2 gunicorn-registry stdout | 2025-09-26 08:37:18,001 [257] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:18,002 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,003 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,004 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,005 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,006 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,007 [257] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71_2: None gunicorn-registry stdout | 2025-09-26 08:37:18,007 [257] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71_2: None gunicorn-registry stdout | 2025-09-26 08:37:18,007 [257] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:18,008 [257] [DEBUG] [app] Ending request: urn:request:f5e2e7a1-a68e-4235-8310-bbc4dbf6dc45 (/v2/testorg2/alpine/blobs/sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:f5e2e7a1-a68e-4235-8310-bbc4dbf6dc45', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 'path': '/v2/testorg2/alpine/blobs/sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:18,008 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:18,008 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:18,008 [257] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:18 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:18 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.013 1718 0.013) gunicorn-registry stdout | 2025-09-26 08:37:18,121 [257] [DEBUG] [app] Starting request: urn:request:530d171c-1cb1-4eaf-b43b-0e3d0ba28009 (/v2/testorg2/alpine/blobs/sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:18,121 [257] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:18,121 [257] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:18,121 [257] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:18,122 [257] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:18,122 [257] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:18,122 [257] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:18,122 [257] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:18,122 [257] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:18,123 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,124 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,125 [257] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:18,125 [257] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71_2 gunicorn-registry stdout | 2025-09-26 08:37:18,125 [257] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:18,126 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,127 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,128 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,129 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,130 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,130 [257] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71_2: None gunicorn-registry stdout | 2025-09-26 08:37:18,130 [257] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71_2: None gunicorn-registry stdout | 2025-09-26 08:37:18,131 [257] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:18,131 [257] [DEBUG] [app] Ending request: urn:request:530d171c-1cb1-4eaf-b43b-0e3d0ba28009 (/v2/testorg2/alpine/blobs/sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:530d171c-1cb1-4eaf-b43b-0e3d0ba28009', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 'path': '/v2/testorg2/alpine/blobs/sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:18,131 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:18,131 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:18,131 [257] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:18 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:18 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.011 1718 0.011) gunicorn-registry stdout | 2025-09-26 08:37:18,172 [258] [DEBUG] [app] Starting request: urn:request:3a9edeb9-0043-4e52-9194-011db2ed4ec8 (/v2/testorg2/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:18,172 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:18,172 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:18,172 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:18,173 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:18,173 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:18,173 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:18,173 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:18,173 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:18,174 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,176 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,176 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,178 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,178 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,179 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,180 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:18,181 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,182 [258] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [3, '829442a2-6221-4794-ba32-1875ff636949', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 37, 18, 182421)]) gunicorn-registry stdout | 2025-09-26 08:37:18,185 [258] [DEBUG] [app] Ending request: urn:request:3a9edeb9-0043-4e52-9194-011db2ed4ec8 (/v2/testorg2/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:3a9edeb9-0043-4e52-9194-011db2ed4ec8', 'remote_addr': '10.129.4.11', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/', 'path': '/v2/testorg2/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:18,185 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:18,185 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:18 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.014 1697 0.014) gunicorn-registry stdout | 2025-09-26 08:37:18,185 [258] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:18 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" gunicorn-web stdout | 2025-09-26 08:37:18,199 [249] [DEBUG] [app] Starting request: urn:request:02835a4f-4fb3-4168-af35-f5235ad99f3c (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:37:18,201 [249] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:37:18,202 [251] [DEBUG] [app] Starting request: urn:request:80d23450-c5aa-409b-a0e0-840a756b1278 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:37:18,203 [251] [DEBUG] [app] Ending request: urn:request:80d23450-c5aa-409b-a0e0-840a756b1278 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:80d23450-c5aa-409b-a0e0-840a756b1278', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:37:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-registry stdout | 2025-09-26 08:37:18,203 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:37:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:37:18,203 [249] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:37:18,204 [249] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:37:18,205 [249] [DEBUG] [app] Starting request: urn:request:6a7fba6b-4622-49e5-ad7b-82d9c5cb5ee7 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:37:18,205 [249] [DEBUG] [app] Ending request: urn:request:6a7fba6b-4622-49e5-ad7b-82d9c5cb5ee7 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:6a7fba6b-4622-49e5-ad7b-82d9c5cb5ee7', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:37:18 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:37:18,206 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:37:18 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:37:18,206 [249] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:37:18,207 [249] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:37:18,207 [249] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:37:18,207 [249] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:37:18,211 [249] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:37:18,211 [249] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:37:18,215 [249] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:37:18,217 [249] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) securityworker stdout | 2025-09-26 08:37:18,217 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "POST /indexer/api/v1/index_report HTTP/1.1" 201 None gunicorn-web stdout | 2025-09-26 08:37:18,217 [249] [DEBUG] [app] Ending request: urn:request:02835a4f-4fb3-4168-af35-f5235ad99f3c (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:02835a4f-4fb3-4168-af35-f5235ad99f3c', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:37:18,217 [249] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:37:18,218 [249] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:37:18 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:37:18 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.019 118 0.020) securityworker stdout | 2025-09-26 08:37:18,220 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [19, 1, 0]) securityworker stdout | 2025-09-26 08:37:18,221 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [19, 1, 0]) securityworker stdout | 2025-09-26 08:37:18,223 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:37:18,223 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/matcher/api/v1/vulnerability_report/sha256:eafc1edb577d2e9b458664a15f23ea1c370214193226069eb22921169fc7e43f gunicorn-registry stdout | 2025-09-26 08:37:18,226 [251] [DEBUG] [app] Starting request: urn:request:aff62381-a6cf-4cd5-9876-4301e7763534 (/v2/testorg2/alpine/blobs/uploads/829442a2-6221-4794-ba32-1875ff636949) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:18,226 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '829442a2-6221-4794-ba32-1875ff636949', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:18,226 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:18,226 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:18,227 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:18,227 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:18,227 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:18,227 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:18,228 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:18,228 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,230 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,231 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,232 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,233 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,234 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,235 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,236 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:18,237 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['829442a2-6221-4794-ba32-1875ff636949', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,238 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:18,238 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:18,238 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:18,239 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:18,239 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:18,239 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,239 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,239 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,239 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,239 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,239 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,239 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,239 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,240 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:18,240 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:18,240 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:18,240 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:18,241 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,241 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,241 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,241 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:18,241 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,241 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,241 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,241 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,241 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:18,241 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083718Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:18,241 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083718Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | d71ced6a86391d244de42ef05e98d46035a6cbc58fc18c029861317482314334 gunicorn-registry stdout | 2025-09-26 08:37:18,241 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | a0a0114b1a981918ef485821d66c7337073ac27411ac6aa7467efc5ebc91195b gunicorn-registry stdout | 2025-09-26 08:37:18,241 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,241 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:18,242 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:18,248 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20?uploads HTTP/1.1" 200 338 securityworker stdout | 2025-09-26 08:37:18,248 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /matcher/api/v1/vulnerability_report/sha256:eafc1edb577d2e9b458664a15f23ea1c370214193226069eb22921169fc7e43f HTTP/1.1" 200 None gunicorn-registry stdout | 2025-09-26 08:37:18,248 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9elf-6sda1n-vth', 'x-amz-id-2': 'mg0l9elf-6sda1n-vth', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:18 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:18,248 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f2068d650bed73ec60008f9351c' gunicorn-registry stdout | 2025-09-26 08:37:18,249 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,249 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:18,249 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,249 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9elf-6sda1n-vth', 'HostId': 'mg0l9elf-6sda1n-vth', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9elf-6sda1n-vth', 'x-amz-id-2': 'mg0l9elf-6sda1n-vth', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:18 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20', 'UploadId': '68d650bed73ec60008f9351c'} gunicorn-registry stdout | 2025-09-26 08:37:18,249 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:18,250 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:18,250 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:18,250 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20', 'UploadId': '68d650bed73ec60008f9351c', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b8930cc0>, 'ContentLength': 5719} gunicorn-registry stdout | 2025-09-26 08:37:18,250 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,250 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,251 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,251 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,251 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,251 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,251 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,251 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,251 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:18,251 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:18,251 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:18,251 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:18,251 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,251 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,252 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:18,252 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,252 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,252 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20', 'query_string': {'uploadId': '68d650bed73ec60008f9351c', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '5719', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'YHrEhM2A6rXkxFMqvci3QA==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b8930cc0>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20?uploadId=68d650bed73ec60008f9351c&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20', 'UploadId': '68d650bed73ec60008f9351c', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b8930cc0>, 'ContentLength': 5719}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:18,252 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,252 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,252 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,252 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,253 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:18,253 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20 gunicorn-registry stdout | partNumber=1&uploadId=68d650bed73ec60008f9351c gunicorn-registry stdout | content-length:5719 gunicorn-registry stdout | content-md5:YHrEhM2A6rXkxFMqvci3QA== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083718Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:18,253 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083718Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | d33cb1a9fe09fe371a406652d562ba6c4f12a010a0e1a1449753f820d2b6fca0 gunicorn-registry stdout | 2025-09-26 08:37:18,253 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | d4c662a9aef830c26d1872880df4e172b02f81cbe54208c29d227623c4538968 gunicorn-registry stdout | 2025-09-26 08:37:18,253 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,253 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:18,253 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:37:18,254 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Attempting to create notifications for manifest #19 gunicorn-registry stdout | 2025-09-26 08:37:18,254 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. securityworker stdout | 2025-09-26 08:37:18,254 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE ("manifestsecuritystatus"."manifest_id" = %s)', [19]) securityworker stdout | 2025-09-26 08:37:18,255 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [19, 3, 2, '""', datetime.datetime(2025, 9, 26, 8, 37, 18, 255086), '37b46b4a70b6f1a19d5e4e18d21f57ff', 4, '{}']) gunicorn-registry stdout | 2025-09-26 08:37:18,255 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Marking id range as completed: 1-20 by worker securityworker stdout | 2025-09-26 08:37:18,257 [86] [DEBUG] [util.migrate.allocator] Marking id range as completed: 1-20 by worker securityworker stdout | 2025-09-26 08:37:18,257 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-20 securityworker stdout | 2025-09-26 08:37:18,257 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:37:18,257 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 20 securityworker stdout | 2025-09-26 08:37:18,257 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:18,257 [86] [DEBUG] [util.migrate.allocator] Total range: 20-1 securityworker stdout | 2025-09-26 08:37:18,257 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:37:18,258 [86] [DEBUG] [util.migrate.allocator] Total range: 1-20 securityworker stdout | 2025-09-26 08:37:18,258 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-20 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 20 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Total range: 20-1 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Total range: 1-20 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-20 securityworker stdout | 2025-09-26 08:37:18,258 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-20 securityworker stdout | 2025-09-26 08:37:18,258 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:37:18,258 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 32, 11, 689813), 1, 20]) securityworker stdout | 2025-09-26 08:37:18,260 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-20 by worker securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-20 by worker securityworker stdout | 2025-09-26 08:37:18,260 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-20 securityworker stdout | 2025-09-26 08:37:18,260 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:37:18,260 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 20 securityworker stdout | 2025-09-26 08:37:18,260 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:18,260 [86] [DEBUG] [util.migrate.allocator] Total range: 20-1 securityworker stdout | 2025-09-26 08:37:18,260 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:37:18,260 [86] [DEBUG] [util.migrate.allocator] Total range: 1-20 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-20 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 20 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Total range: 20-1 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Total range: 1-20 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:18,260 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:18,260 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-20 securityworker stdout | 2025-09-26 08:37:18,260 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-20 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:37:18,261 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 32, 11, 689813), 1, 20]) gunicorn-web stdout | 2025-09-26 08:37:18,262 [247] [DEBUG] [app] Starting request: urn:request:655afa10-8474-4a8f-8374-3f521522235f (/health/instance) {'X-Forwarded-For': '10.130.2.2'} securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-20 by worker securityworker stdout | 2025-09-26 08:37:18,263 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-20 by worker securityworker stdout | 2025-09-26 08:37:18,263 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-20 securityworker stdout | 2025-09-26 08:37:18,263 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:37:18,263 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 20 securityworker stdout | 2025-09-26 08:37:18,263 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:18,263 [86] [DEBUG] [util.migrate.allocator] Total range: 20-1 securityworker stdout | 2025-09-26 08:37:18,263 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:37:18,263 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-20 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 20 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] Total range: 20-1 securityworker stderr | 2025-09-26 08:37:18 [86] [DEBUG] [util.migrate.allocator] No more work by worker gunicorn-web stdout | 2025-09-26 08:37:18,263 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost securityworker stdout | 2025-09-26 08:37:18,263 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:41 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:37:18,265 [251] [DEBUG] [app] Starting request: urn:request:1ea171a0-cb22-4501-bd4c-3e7e46e0808d (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:37:18,265 [251] [DEBUG] [app] Ending request: urn:request:1ea171a0-cb22-4501-bd4c-3e7e46e0808d (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:1ea171a0-cb22-4501-bd4c-3e7e46e0808d', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:37:18,266 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:37:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:37:18,266 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:37:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:37:18,267 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:37:18,268 [248] [DEBUG] [app] Starting request: urn:request:81459738-0df5-4df3-9a3c-8f651fb0e353 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:37:18,268 [248] [DEBUG] [app] Ending request: urn:request:81459738-0df5-4df3-9a3c-8f651fb0e353 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:81459738-0df5-4df3-9a3c-8f651fb0e353', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:37:18,268 [248] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:37:18 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:37:18,269 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:37:18 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:37:18,269 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:37:18,269 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:37:18,269 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:37:18,272 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:37:18,273 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:37:18,276 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:37:18,277 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:37:18,279 [247] [DEBUG] [app] Ending request: urn:request:655afa10-8474-4a8f-8374-3f521522235f (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:655afa10-8474-4a8f-8374-3f521522235f', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:37:18,279 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:37:18,279 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:37:18 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:37:18 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.018 118 0.018) gunicorn-registry stdout | 2025-09-26 08:37:18,313 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20?uploadId=68d650bed73ec60008f9351c&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:18,313 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9elr-6zfkeg-6zt', 'x-amz-id-2': 'mg0l9elr-6zfkeg-6zt', 'ETag': '"607ac484cd80eab5e4c4532abdc8b740"', 'Date': 'Fri, 26 Sep 2025 08:37:18 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:18,313 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:18,314 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,314 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:18,314 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,314 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9elr-6zfkeg-6zt', 'HostId': 'mg0l9elr-6zfkeg-6zt', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9elr-6zfkeg-6zt', 'x-amz-id-2': 'mg0l9elr-6zfkeg-6zt', 'etag': '"607ac484cd80eab5e4c4532abdc8b740"', 'date': 'Fri, 26 Sep 2025 08:37:18 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"607ac484cd80eab5e4c4532abdc8b740"'} gunicorn-registry stdout | 2025-09-26 08:37:18,314 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20', 'UploadId': '68d650bed73ec60008f9351c', 'MultipartUpload': {'Parts': [{'ETag': '"607ac484cd80eab5e4c4532abdc8b740"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:18,314 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,314 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,314 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,314 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,315 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,315 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,315 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,315 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:18,315 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:18,315 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:18,315 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:18,315 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,316 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,316 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,316 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20', 'query_string': {'uploadId': '68d650bed73ec60008f9351c'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"607ac484cd80eab5e4c4532abdc8b740"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20?uploadId=68d650bed73ec60008f9351c', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20', 'UploadId': '68d650bed73ec60008f9351c', 'MultipartUpload': {'Parts': [{'ETag': '"607ac484cd80eab5e4c4532abdc8b740"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:18,316 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,316 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,316 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,316 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,317 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:18,317 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20 gunicorn-registry stdout | uploadId=68d650bed73ec60008f9351c gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:d216d221a94ed27d4181d3a4c9ab3115e2019e5123bfc93d2f0084fa3b51961f gunicorn-registry stdout | x-amz-date:20250926T083718Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | d216d221a94ed27d4181d3a4c9ab3115e2019e5123bfc93d2f0084fa3b51961f gunicorn-registry stdout | 2025-09-26 08:37:18,317 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083718Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 49cd253f2a23fceb25d9a4a4e93fd8fdcee70bb1c846ad3739e68bf58653f294 gunicorn-registry stdout | 2025-09-26 08:37:18,317 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | cbc3ab2656d697a8f8c51b943668267a9fadd00700d77ff2dd18dc569b350605 gunicorn-registry stdout | 2025-09-26 08:37:18,318 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,318 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:18,318 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:18,334 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20?uploadId=68d650bed73ec60008f9351c HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:18,334 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9enj-8208vm-1dgm', 'x-amz-id-2': 'mg0l9enj-8208vm-1dgm', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:18 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:18,334 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20"8b9c9dbf6bb558b146cc719059ab2f8b-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20?uploadId=68d650bed73ec60008f9351c' gunicorn-registry stdout | 2025-09-26 08:37:18,334 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,335 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,335 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:18,335 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,335 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9enj-8208vm-1dgm', 'HostId': 'mg0l9enj-8208vm-1dgm', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9enj-8208vm-1dgm', 'x-amz-id-2': 'mg0l9enj-8208vm-1dgm', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:18 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20?uploadId=68d650bed73ec60008f9351c', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20', 'ETag': '"8b9c9dbf6bb558b146cc719059ab2f8b-1"'} gunicorn-registry stdout | 2025-09-26 08:37:18,335 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:18,336 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:18,336 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 5719 bytes to blob 829442a2-6221-4794-ba32-1875ff636949 took 0.09855151176452637 seconds gunicorn-registry stdout | 2025-09-26 08:37:18,337 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['829442a2-6221-4794-ba32-1875ff636949', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,339 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '829442a2-6221-4794-ba32-1875ff636949', 5719, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwaXRAdjEjaGVybWV0aWMiOnRydWV9fX05MDM4fV1dfX0sImh0dHBzOi8vbW9ieXByb2plY3Qub3JnL2J1aWxkaxcAAAAAAAAAALIAAAAAAAAqzsXHAEoudA/BuKQsioe9tc3Gyx5NUIHWuZnsofKYBpRiLg==', 9, '{"chunks": [["uploads/19809af7-4383-4816-a126-8ed25d580f20", 0, 5719]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 37, 18, 182421), None, None, 58]) gunicorn-registry stdout | 2025-09-26 08:37:18,340 [251] [DEBUG] [app] Ending request: urn:request:aff62381-a6cf-4cd5-9876-4301e7763534 (/v2/testorg2/alpine/blobs/uploads/829442a2-6221-4794-ba32-1875ff636949) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:aff62381-a6cf-4cd5-9876-4301e7763534', 'remote_addr': '10.129.4.11', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/829442a2-6221-4794-ba32-1875ff636949', 'path': '/v2/testorg2/alpine/blobs/uploads/829442a2-6221-4794-ba32-1875ff636949', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:18,341 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:18,341 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:18,341 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:18 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/829442a2-6221-4794-ba32-1875ff636949 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:18 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/829442a2-6221-4794-ba32-1875ff636949 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.116 7496 0.116) gunicorn-registry stdout | 2025-09-26 08:37:18,382 [251] [DEBUG] [app] Starting request: urn:request:0b184cd1-5819-4319-b4a8-bd9c4a5f11f9 (/v2/testorg2/alpine/blobs/uploads/829442a2-6221-4794-ba32-1875ff636949) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:18,382 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '829442a2-6221-4794-ba32-1875ff636949', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:18,382 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:18,382 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:18,384 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:18,384 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:18,384 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:18,384 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:18,384 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:18,385 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,387 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,388 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,389 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,390 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,391 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,392 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,393 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:18,394 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['829442a2-6221-4794-ba32-1875ff636949', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,395 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:18,395 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:18,396 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:18,397 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:18,397 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/c5bdc993-c0ef-4c51-928c-5aa145b04a92', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:18,397 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,397 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,398 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,398 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,398 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,398 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,398 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,398 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,398 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:18,398 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:18,398 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:18,398 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:18,398 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,399 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,399 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,399 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/c5bdc993-c0ef-4c51-928c-5aa145b04a92?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/c5bdc993-c0ef-4c51-928c-5aa145b04a92', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/c5bdc993-c0ef-4c51-928c-5aa145b04a92?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/c5bdc993-c0ef-4c51-928c-5aa145b04a92', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:18,399 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,399 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,399 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,399 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,400 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:18,400 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/c5bdc993-c0ef-4c51-928c-5aa145b04a92 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083718Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:18,400 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083718Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | ff77e46ec9b759bd42e6c4534c8fcf2b469892cf0b17aa0471e94c970d5771b8 gunicorn-registry stdout | 2025-09-26 08:37:18,400 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | d1ab9f9eb874f80618189621996dd832665bbe07334e66a2d46a1e49a4b550f5 gunicorn-registry stdout | 2025-09-26 08:37:18,400 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,400 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:18,401 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:18,407 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/c5bdc993-c0ef-4c51-928c-5aa145b04a92?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:18,407 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9epu-9fcf9o-bgi', 'x-amz-id-2': 'mg0l9epu-9fcf9o-bgi', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:18 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:18,407 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/c5bdc993-c0ef-4c51-928c-5aa145b04a9268d650bed73ec60008f93525' gunicorn-registry stdout | 2025-09-26 08:37:18,407 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,407 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:18,408 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,408 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9epu-9fcf9o-bgi', 'HostId': 'mg0l9epu-9fcf9o-bgi', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9epu-9fcf9o-bgi', 'x-amz-id-2': 'mg0l9epu-9fcf9o-bgi', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:18 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/c5bdc993-c0ef-4c51-928c-5aa145b04a92', 'UploadId': '68d650bed73ec60008f93525'} gunicorn-registry stdout | 2025-09-26 08:37:18,408 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:18,408 [251] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/c5bdc993-c0ef-4c51-928c-5aa145b04a92', 'UploadId': '68d650bed73ec60008f93525'} gunicorn-registry stdout | 2025-09-26 08:37:18,409 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,409 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,409 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,409 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,409 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,409 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,409 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:18,409 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:18,409 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:18,409 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:18,410 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,410 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,410 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,411 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/c5bdc993-c0ef-4c51-928c-5aa145b04a92', 'query_string': {'uploadId': '68d650bed73ec60008f93525'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/c5bdc993-c0ef-4c51-928c-5aa145b04a92', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/c5bdc993-c0ef-4c51-928c-5aa145b04a92?uploadId=68d650bed73ec60008f93525', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/c5bdc993-c0ef-4c51-928c-5aa145b04a92', 'UploadId': '68d650bed73ec60008f93525'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:18,411 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,411 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,411 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,411 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,411 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:18,411 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/c5bdc993-c0ef-4c51-928c-5aa145b04a92 gunicorn-registry stdout | uploadId=68d650bed73ec60008f93525 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083718Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:18,411 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083718Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | b324beec8a2e7bfba13b02f81d1d058714e88a795b19eceb760d44cfe098945e gunicorn-registry stdout | 2025-09-26 08:37:18,411 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 424d85605f39248f9c35e8dff8ce801f73215301cc037aa7d257de893d459e1b gunicorn-registry stdout | 2025-09-26 08:37:18,412 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,412 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:18,412 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:18,419 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/c5bdc993-c0ef-4c51-928c-5aa145b04a92?uploadId=68d650bed73ec60008f93525 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:37:18,419 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9eq5-9lvwaw-te2', 'x-amz-id-2': 'mg0l9eq5-9lvwaw-te2', 'Date': 'Fri, 26 Sep 2025 08:37:18 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:18,419 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:18,419 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,419 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:18,419 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,420 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9eq5-9lvwaw-te2', 'HostId': 'mg0l9eq5-9lvwaw-te2', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9eq5-9lvwaw-te2', 'x-amz-id-2': 'mg0l9eq5-9lvwaw-te2', 'date': 'Fri, 26 Sep 2025 08:37:18 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:37:18,420 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 829442a2-6221-4794-ba32-1875ff636949 took 0.024126291275024414 seconds gunicorn-registry stdout | 2025-09-26 08:37:18,420 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['829442a2-6221-4794-ba32-1875ff636949', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,422 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '829442a2-6221-4794-ba32-1875ff636949', 5719, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwaXRAdjEjaGVybWV0aWMiOnRydWV9fX05MDM4fV1dfX0sImh0dHBzOi8vbW9ieXByb2plY3Qub3JnL2J1aWxkaxcAAAAAAAAAALIAAAAAAAAqzsXHAEoudA/BuKQsioe9tc3Gyx5NUIHWuZnsofKYBpRiLg==', 9, '{"chunks": [["uploads/19809af7-4383-4816-a126-8ed25d580f20", 0, 5719]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 37, 18, 182421), None, None, 58]) gunicorn-registry stdout | 2025-09-26 08:37:18,424 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:18,424 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:18,424 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:18,425 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:18,425 [251] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/a7/a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71'} gunicorn-registry stdout | 2025-09-26 08:37:18,425 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,425 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,426 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,426 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,426 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,426 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,426 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,426 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:18,426 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:18,426 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:18,426 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:18,426 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,426 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,426 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,427 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/a7/a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a7/a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a7/a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/a7/a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:18,427 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,427 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,427 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,427 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,427 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:18,427 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a7/a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083718Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:18,428 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083718Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 7f2b3d988c729077f644cc5b2d1a37fed1052c701710317cf5b8390482b923b3 gunicorn-registry stdout | 2025-09-26 08:37:18,428 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 3487863991f230719f688af653e4d3d97352f30509626f02dcb975aff9562232 gunicorn-registry stdout | 2025-09-26 08:37:18,428 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,428 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:18,428 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:18,433 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a7/a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:37:18,434 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9eqm-9vl1fi-199s', 'x-amz-id-2': 'mg0l9eqm-9vl1fi-199s', 'Content-Type': 'application/xml', 'Content-Length': '339', 'Date': 'Fri, 26 Sep 2025 08:37:18 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:18,434 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:18,434 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,434 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:18,434 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,434 [251] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:37:18,434 [251] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:37:18,434 [251] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/a7/a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71 gunicorn-registry stdout | 2025-09-26 08:37:18,435 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:18,436 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:18,436 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:18,436 [251] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:37:18,436 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,436 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,436 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,436 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,436 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,436 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,436 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,437 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:18,437 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:18,437 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:18,437 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:18,437 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,437 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,437 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,437 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:18,437 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,437 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,438 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,438 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,438 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,438 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:18,438 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083718Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:18,438 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083718Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 2dcda7a9a5a56ce14b647fccad915d4d604f6690dbab5b61fe6dc465091fd1dc gunicorn-registry stdout | 2025-09-26 08:37:18,438 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 13a1f2322850fe17eec24e0d5d55a32b61f2804801433c1a734f4fcfb5dacf86 gunicorn-registry stdout | 2025-09-26 08:37:18,438 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,439 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,439 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:18,439 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:18,444 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:18,444 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9eqw-a20qug-16pg', 'x-amz-id-2': 'mg0l9eqw-a20qug-16pg', 'ETag': '"8b9c9dbf6bb558b146cc719059ab2f8b-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:18 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '5719', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:18 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:18,444 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:18,445 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,445 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:18,445 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,446 [251] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/a7/a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:37:18,446 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:18,446 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/a7/a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:18,446 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/a7/a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:18,446 [251] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/a7/a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/a7/a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 'extra_args': {}, 'callbacks': [], 'size': 5719} gunicorn-registry stdout | 2025-09-26 08:37:18,446 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,446 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,446 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,446 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,446 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,447 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,447 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,447 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,447 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,447 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,447 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:18,447 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:18,447 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:18,447 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:18,448 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,448 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,448 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,448 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/a7/a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a7/a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a7/a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/a7/a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:18,448 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,448 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,448 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,448 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,448 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,449 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:18,449 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a7/a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/19809af7-4383-4816-a126-8ed25d580f20 gunicorn-registry stdout | x-amz-date:20250926T083718Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:18,449 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083718Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 3217718b281390fdc50d4ead7bd441b4fc1fa8b7cf420badd23aee8059875c9f gunicorn-registry stdout | 2025-09-26 08:37:18,449 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | e0f6f76f476b138d0dd38fab65cfa56c2c0249b0dca6ae3e580e2489d813bc17 gunicorn-registry stdout | 2025-09-26 08:37:18,449 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,449 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,449 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:18,450 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:18,450 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:18,495 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a7/a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:37:18,496 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9er8-a8xisp-i9r', 'x-amz-id-2': 'mg0l9er8-a8xisp-i9r', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:37:18 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:18,496 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:37:18.000Z"8b9c9dbf6bb558b146cc719059ab2f8b-1"' gunicorn-registry stdout | 2025-09-26 08:37:18,496 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,496 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:18,496 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:18,496 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:18,497 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:18,498 [251] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 829442a2-6221-4794-ba32-1875ff636949 with digest sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71 took 0.06346774101257324 seconds gunicorn-registry stdout | 2025-09-26 08:37:18,498 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['829442a2-6221-4794-ba32-1875ff636949', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,500 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,501 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['701bc053-b6c3-4cd7-aff1-6e278f05b924', 5719, None, True, True, 'sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71']) gunicorn-registry stdout | 2025-09-26 08:37:18,502 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [59, 9]) gunicorn-registry stdout | 2025-09-26 08:37:18,503 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,503 [251] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [3, 59, datetime.datetime(2025, 9, 26, 8, 37, 18, 503574), datetime.datetime(2025, 9, 26, 9, 37, 18, 503553)]) gunicorn-registry stdout | 2025-09-26 08:37:18,504 [251] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [58]) gunicorn-registry stdout | 2025-09-26 08:37:18,506 [251] [DEBUG] [app] Ending request: urn:request:0b184cd1-5819-4319-b4a8-bd9c4a5f11f9 (/v2/testorg2/alpine/blobs/uploads/829442a2-6221-4794-ba32-1875ff636949) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:0b184cd1-5819-4319-b4a8-bd9c4a5f11f9', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/829442a2-6221-4794-ba32-1875ff636949?digest=sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71', 'path': '/v2/testorg2/alpine/blobs/uploads/829442a2-6221-4794-ba32-1875ff636949', 'parameters': {'digest': 'sha256:a7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:18,507 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:18,507 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:18,507 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:18 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/829442a2-6221-4794-ba32-1875ff636949?digest=sha256%3Aa7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:18 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/829442a2-6221-4794-ba32-1875ff636949?digest=sha256%3Aa7eef7334b05270ba880c6da8e0bfd02e4d572564778cd3d2ba6336590044d71 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.126 1853 0.126) securityworker stdout | 2025-09-26 08:37:18,750 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} gunicorn-registry stdout | 2025-09-26 08:37:18,810 [258] [DEBUG] [app] Starting request: urn:request:89d0ad24-f4f4-4455-91b1-62707d39607b (/v2/testorg2/alpine/blobs/sha256:bab5ae10506278931255c2b96d817cc72fb378b372173649d588d074bdbfb8e8) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:18,810 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:bab5ae10506278931255c2b96d817cc72fb378b372173649d588d074bdbfb8e8', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:18,810 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:18,810 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:18,812 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:18,812 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:18,812 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:18,812 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:18,812 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:18,813 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,814 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,817 [258] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:18,817 [258] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:bab5ae10506278931255c2b96d817cc72fb378b372173649d588d074bdbfb8e8_2 gunicorn-registry stdout | 2025-09-26 08:37:18,817 [258] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:bab5ae10506278931255c2b96d817cc72fb378b372173649d588d074bdbfb8e8_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:18,818 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,819 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,820 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,821 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:bab5ae10506278931255c2b96d817cc72fb378b372173649d588d074bdbfb8e8', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,822 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:bab5ae10506278931255c2b96d817cc72fb378b372173649d588d074bdbfb8e8', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:18,823 [258] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:bab5ae10506278931255c2b96d817cc72fb378b372173649d588d074bdbfb8e8_2: None gunicorn-registry stdout | 2025-09-26 08:37:18,823 [258] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:bab5ae10506278931255c2b96d817cc72fb378b372173649d588d074bdbfb8e8_2: None gunicorn-registry stdout | 2025-09-26 08:37:18,823 [258] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:18,823 [258] [DEBUG] [app] Ending request: urn:request:89d0ad24-f4f4-4455-91b1-62707d39607b (/v2/testorg2/alpine/blobs/sha256:bab5ae10506278931255c2b96d817cc72fb378b372173649d588d074bdbfb8e8) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:89d0ad24-f4f4-4455-91b1-62707d39607b', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:bab5ae10506278931255c2b96d817cc72fb378b372173649d588d074bdbfb8e8', 'path': '/v2/testorg2/alpine/blobs/sha256:bab5ae10506278931255c2b96d817cc72fb378b372173649d588d074bdbfb8e8', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:18,823 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:18,823 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:18,824 [258] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:18 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:bab5ae10506278931255c2b96d817cc72fb378b372173649d588d074bdbfb8e8 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:18 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:bab5ae10506278931255c2b96d817cc72fb378b372173649d588d074bdbfb8e8 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.014 1718 0.014) repositorygcworker stdout | 2025-09-26 08:37:19,075 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:37:19,076 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:28.077240+00:00 (in 9.001135 seconds) repositorygcworker stdout | 2025-09-26 08:37:19,076 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:19 GMT)" (scheduled at 2025-09-26 08:37:19.075668+00:00) repositorygcworker stdout | 2025-09-26 08:37:19,076 [81] [DEBUG] [workers.queueworker] Getting work item from queue. repositorygcworker stdout | 2025-09-26 08:37:19,076 [81] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 37, 19, 76352), True, datetime.datetime(2025, 9, 26, 8, 37, 19, 76352), 0, 'repositorygc/%', 50, 1, 0]) repositorygcworker stdout | 2025-09-26 08:37:19,083 [81] [DEBUG] [workers.queueworker] No more work. repositorygcworker stdout | 2025-09-26 08:37:19,083 [81] [DEBUG] [data.database] Disconnecting from database. repositorygcworker stdout | 2025-09-26 08:37:19,083 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:19 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:37:19,710 [257] [DEBUG] [app] Starting request: urn:request:9ab2cdfb-e2eb-41c7-b576-1bca3d47a71f (/v2/testorg2/alpine/blobs/sha256:6e174226ea690ced550e5641249a412cdbefd2d09871f3e64ab52137a54ba606) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:19,710 [257] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:6e174226ea690ced550e5641249a412cdbefd2d09871f3e64ab52137a54ba606', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:19,710 [257] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:19,710 [257] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:19,712 [257] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:19,712 [257] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:19,712 [257] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:19,712 [257] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:19,712 [257] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:19,713 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:19,714 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:19,715 [257] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:19,715 [257] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:6e174226ea690ced550e5641249a412cdbefd2d09871f3e64ab52137a54ba606_2 gunicorn-registry stdout | 2025-09-26 08:37:19,716 [257] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:6e174226ea690ced550e5641249a412cdbefd2d09871f3e64ab52137a54ba606_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:19,717 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:19,718 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:19,719 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:19,720 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:6e174226ea690ced550e5641249a412cdbefd2d09871f3e64ab52137a54ba606', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:19,721 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:6e174226ea690ced550e5641249a412cdbefd2d09871f3e64ab52137a54ba606', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:19,722 [257] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:6e174226ea690ced550e5641249a412cdbefd2d09871f3e64ab52137a54ba606_2: None gunicorn-registry stdout | 2025-09-26 08:37:19,722 [257] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:6e174226ea690ced550e5641249a412cdbefd2d09871f3e64ab52137a54ba606_2: None gunicorn-registry stdout | 2025-09-26 08:37:19,722 [257] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:19,723 [257] [DEBUG] [app] Ending request: urn:request:9ab2cdfb-e2eb-41c7-b576-1bca3d47a71f (/v2/testorg2/alpine/blobs/sha256:6e174226ea690ced550e5641249a412cdbefd2d09871f3e64ab52137a54ba606) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:9ab2cdfb-e2eb-41c7-b576-1bca3d47a71f', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:6e174226ea690ced550e5641249a412cdbefd2d09871f3e64ab52137a54ba606', 'path': '/v2/testorg2/alpine/blobs/sha256:6e174226ea690ced550e5641249a412cdbefd2d09871f3e64ab52137a54ba606', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:19,723 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:19,723 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:19,723 [257] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:19 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:6e174226ea690ced550e5641249a412cdbefd2d09871f3e64ab52137a54ba606 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:19 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:6e174226ea690ced550e5641249a412cdbefd2d09871f3e64ab52137a54ba606 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.014 1718 0.014) gunicorn-registry stdout | 2025-09-26 08:37:19,851 [251] [DEBUG] [app] Starting request: urn:request:56f81d47-e35f-45b6-a941-e379bd4fb216 (/v2/testorg2/alpine/blobs/uploads/1b0fcd32-b19f-4012-a4d9-77e82ecff97d) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:19,851 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '1b0fcd32-b19f-4012-a4d9-77e82ecff97d', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:19,851 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:19,851 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:19,852 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:19,852 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:19,852 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:19,852 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:19,852 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:19,853 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:19,854 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:19,855 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:19,857 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:19,858 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:19,859 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:19,860 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:19,861 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:19,862 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['1b0fcd32-b19f-4012-a4d9-77e82ecff97d', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:19,863 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:19,863 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:19,863 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:19,864 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:19,864 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:19,864 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:19,864 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:19,864 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:19,864 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:19,864 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:19,864 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:19,864 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:19,864 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:19,864 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:19,865 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:19,865 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:19,865 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:19,865 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:19,865 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:19,865 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:19,865 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:19,865 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:19,865 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:19,865 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:19,865 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:19,865 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:19,865 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083719Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:19,865 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083719Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 53e29ac367607e99790c48b26b2e4ff1d1acf679d5ce0c657f1ede4c8ad721d3 gunicorn-registry stdout | 2025-09-26 08:37:19,865 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | c8a05dfe7d440baae91a012622be3594edde30166504be94dc7c494d02b45e0e gunicorn-registry stdout | 2025-09-26 08:37:19,866 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:19,866 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:19,866 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:19,873 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:19,873 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9fuk-l5vc7-89d', 'x-amz-id-2': 'mg0l9fuk-l5vc7-89d', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:19 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:19,873 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df68d650bfd73ec60008f93537' gunicorn-registry stdout | 2025-09-26 08:37:19,873 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:19,873 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:19,874 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:19,874 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9fuk-l5vc7-89d', 'HostId': 'mg0l9fuk-l5vc7-89d', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9fuk-l5vc7-89d', 'x-amz-id-2': 'mg0l9fuk-l5vc7-89d', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:19 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df', 'UploadId': '68d650bfd73ec60008f93537'} gunicorn-registry stdout | 2025-09-26 08:37:19,874 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:20,188 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:20,188 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:20,189 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df', 'UploadId': '68d650bfd73ec60008f93537', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89faac0>, 'ContentLength': 4130750} gunicorn-registry stdout | 2025-09-26 08:37:20,189 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,189 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,189 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,189 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,189 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:20,189 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,189 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,189 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:20,189 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:20,189 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:20,189 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:20,189 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:20,189 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,197 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,198 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:20,198 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,198 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,198 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df', 'query_string': {'uploadId': '68d650bfd73ec60008f93537', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '4130750', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'YrHOrTu3491Cop5Bk8FCKA==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b89faac0>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df?uploadId=68d650bfd73ec60008f93537&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df', 'UploadId': '68d650bfd73ec60008f93537', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89faac0>, 'ContentLength': 4130750}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:20,198 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:20,198 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:20,198 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,198 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,198 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:20,198 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df gunicorn-registry stdout | partNumber=1&uploadId=68d650bfd73ec60008f93537 gunicorn-registry stdout | content-length:4130750 gunicorn-registry stdout | content-md5:YrHOrTu3491Cop5Bk8FCKA== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083720Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:20,198 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083720Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | a31b1e31e6c7dbb5353a2fe832181fede4f071dcf111cb1ef197794d72f6ed72 gunicorn-registry stdout | 2025-09-26 08:37:20,198 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 0c6191d5c5c4ea07b316554005b91ef694182da9ffe2146d1d549b856d49d5d7 gunicorn-registry stdout | 2025-09-26 08:37:20,198 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,198 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:20,199 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:20,200 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:37:20,201 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-web stdout | 2025-09-26 08:37:20,261 [250] [DEBUG] [app] Starting request: urn:request:a1eeda77-63ce-470b-aa23-c29ae4f44fa7 (/_storage_proxy_auth) {'X-Forwarded-For': '3.147.184.98'} gunicorn-web stdout | 2025-09-26 08:37:20,261 [250] [DEBUG] [storage.downloadproxy] Got token b'eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODM5LCJpYXQiOjE3NTg4NzU4MzksImV4cCI6MTc1ODg3NjQzOSwic3ViIjoic3RvcmFnZXByb3h5IiwiYWNjZXNzIjpbeyJ0eXBlIjoic3RvcmFnZXByb3h5IiwidXJpIjoicXVheS1kYXRhc3RvcmUtZTI5YzM5OTQtNjJlYi00ZTlmLTk1NTAtYmFhMTFmODc0MDg0L2RhdGFzdG9yYWdlL3JlZ2lzdHJ5L3NoYTI1Ni8wNi8wNmJhYjVlODQ3YzU2NzRkNmVjMjZiMzQyY2MxMWQ3YTA1MWE2YTIzMWU1ZGI4YTk1NWQ1N2JjOWY0YWI1NTk1P0FXU0FjY2Vzc0tleUlkPUtxVUFodjYwQUdsQUREcTBNY0taJlNpZ25hdHVyZT1EM2JiVmtUWnhsUUZYaHlYUnFaN0RsVzZXYlElM0QmRXhwaXJlcz0xNzU4ODc2NDM5IiwiaG9zdCI6InMzLm9wZW5zaGlmdC1zdG9yYWdlLnN2Yy5jbHVzdGVyLmxvY2FsOjQ0MyIsInNjaGVtZSI6Imh0dHBzIn1dLCJjb250ZXh0Ijp7fX0.WzCSx4ta_N-ZdbJWrx46bu4wDigMV8gp4VOaFDIncwlfXB3gkLBYpr3Xhtj_5WocAXc9DHhtgDJiBTlAMfi1-DtuVetZ7878xTMDYVaUudoB2u3jJVKDu_K5F1mrUpY5FSzlUSlf0-OhvQcaZeUh50Jjy0BfeUxgM95OsOwZP2BMpZkYqkPxm0bH9bxNJjqpAdOFQv44GJyAw03QPBFL_Iy_Nw3L5miWdAEYrdFc-EbzBRXbfGXkZLlD_EyY9chNbefq3qRrElKBsVPW8IeP-oAYgfXsfuUcEQikGJAAh0HvWnp2iHSQR4nhccMu027efHz_OeNuiOctZlPeH033tA' for storage proxy auth request /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ETTVMQ0pwWVhRaU9qRTNOVGc0TnpVNE16a3NJbVY0Y0NJNk1UYzFPRGczTmpRek9Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4d05pOHdObUpoWWpWbE9EUTNZelUyTnpSa05tVmpNalppTXpReVkyTXhNV1EzWVRBMU1XRTJZVEl6TVdVMVpHSTRZVGsxTldRMU4ySmpPV1kwWVdJMU5UazFQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFFTTJKaVZtdFVXbmhzVVVaWWFIbFlVbkZhTjBSc1Z6WlhZbEVsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRNNUlpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuV3pDU3g0dGFfTi1aZGJKV3J4NDZidTR3RGlnTVY4Z3A0Vk9hRkRJbmN3bGZYQjNna0xCWXByM1hodGpfNVdvY0FYYzlESGh0Z0RKaUJUbEFNZmkxLUR0dVZldFo3ODc4eFRNRFlWYVV1ZG9CMnUzakpWS0R1X0s1RjFtclVwWTVGU3psVVNsZjAtT2h2UWNhWmVVaDUwSmp5MEJmZVV4Z005NU9zT3daUDJCTXBaa1lxa1B4bTBiSDlieE5KanFwQWRPRlF2NDRHSnlBdzAzUVBCRkxfSXlfTnczTDVtaVdkQUVZcmRGYy1FYnpCUlhiZkdYa1pMbERfRXlZOWNoTmJlZnEzcVJyRWxLQnNWUFc4SWVQLW9BWWdmWHNmdVVjRVFpa0dKQUFoMEh2V25wMmlIU1FSNG5oY2NNdTAyN2VmSHpfT2VOdWlPY3RabFBlSDAzM3RB/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=D3bbVkTZxlQFXhyXRqZ7DlW6WbQ%3D&Expires=1758876439 with parts ['ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ETTVMQ0pwWVhRaU9qRTNOVGc0TnpVNE16a3NJbVY0Y0NJNk1UYzFPRGczTmpRek9Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4d05pOHdObUpoWWpWbE9EUTNZelUyTnpSa05tVmpNalppTXpReVkyTXhNV1EzWVRBMU1XRTJZVEl6TVdVMVpHSTRZVGsxTldRMU4ySmpPV1kwWVdJMU5UazFQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFFTTJKaVZtdFVXbmhzVVVaWWFIbFlVbkZhTjBSc1Z6WlhZbEVsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRNNUlpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuV3pDU3g0dGFfTi1aZGJKV3J4NDZidTR3RGlnTVY4Z3A0Vk9hRkRJbmN3bGZYQjNna0xCWXByM1hodGpfNVdvY0FYYzlESGh0Z0RKaUJUbEFNZmkxLUR0dVZldFo3ODc4eFRNRFlWYVV1ZG9CMnUzakpWS0R1X0s1RjFtclVwWTVGU3psVVNsZjAtT2h2UWNhWmVVaDUwSmp5MEJmZVV4Z005NU9zT3daUDJCTXBaa1lxa1B4bTBiSDlieE5KanFwQWRPRlF2NDRHSnlBdzAzUVBCRkxfSXlfTnczTDVtaVdkQUVZcmRGYy1FYnpCUlhiZkdYa1pMbERfRXlZOWNoTmJlZnEzcVJyRWxLQnNWUFc4SWVQLW9BWWdmWHNmdVVjRVFpa0dKQUFoMEh2V25wMmlIU1FSNG5oY2NNdTAyN2VmSHpfT2VOdWlPY3RabFBlSDAzM3RB', 'https', 's3.openshift-storage.svc.cluster.local:443', 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=D3bbVkTZxlQFXhyXRqZ7DlW6WbQ%3D&Expires=1758876439'] gunicorn-web stdout | 2025-09-26 08:37:20,262 [250] [DEBUG] [app] Ending request: urn:request:a1eeda77-63ce-470b-aa23-c29ae4f44fa7 (/_storage_proxy_auth) {'endpoint': '_storage_proxy_auth', 'request_id': 'urn:request:a1eeda77-63ce-470b-aa23-c29ae4f44fa7', 'remote_addr': '3.147.184.98', 'http_method': 'GET', 'original_url': 'https://web_app_server/_storage_proxy_auth', 'path': '/_storage_proxy_auth', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'Go-http-client/1.1'} gunicorn-web stdout | 2025-09-26 08:37:20,262 [250] [INFO] [gunicorn.access] 3.147.184.98 - - [26/Sep/2025:08:37:20 +0000] "GET /_storage_proxy_auth HTTP/1.0" 200 2 "-" "Go-http-client/1.1" gunicorn-registry stdout | 2025-09-26 08:37:20,654 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df?uploadId=68d650bfd73ec60008f93537&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:20,654 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9g3t-637dep-pn', 'x-amz-id-2': 'mg0l9g3t-637dep-pn', 'ETag': '"62b1cead3bb7e3dd42a29e4193c14228"', 'Date': 'Fri, 26 Sep 2025 08:37:20 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:20,654 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:20,654 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,654 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:20,654 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:20,654 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9g3t-637dep-pn', 'HostId': 'mg0l9g3t-637dep-pn', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9g3t-637dep-pn', 'x-amz-id-2': 'mg0l9g3t-637dep-pn', 'etag': '"62b1cead3bb7e3dd42a29e4193c14228"', 'date': 'Fri, 26 Sep 2025 08:37:20 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"62b1cead3bb7e3dd42a29e4193c14228"'} gunicorn-registry stdout | 2025-09-26 08:37:20,654 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df', 'UploadId': '68d650bfd73ec60008f93537', 'MultipartUpload': {'Parts': [{'ETag': '"62b1cead3bb7e3dd42a29e4193c14228"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:20,654 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,655 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,655 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,655 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:20,655 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,655 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,655 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:20,655 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:20,655 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:20,655 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:20,655 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:20,655 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,655 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,655 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,655 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df', 'query_string': {'uploadId': '68d650bfd73ec60008f93537'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"62b1cead3bb7e3dd42a29e4193c14228"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df?uploadId=68d650bfd73ec60008f93537', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df', 'UploadId': '68d650bfd73ec60008f93537', 'MultipartUpload': {'Parts': [{'ETag': '"62b1cead3bb7e3dd42a29e4193c14228"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:20,656 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:20,656 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:20,656 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,656 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,656 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:20,656 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df gunicorn-registry stdout | uploadId=68d650bfd73ec60008f93537 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:4663dab591a31ad385af52af93d3bab7ae9966d9b5df96cb12c785ed437da4a0 gunicorn-registry stdout | x-amz-date:20250926T083720Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 4663dab591a31ad385af52af93d3bab7ae9966d9b5df96cb12c785ed437da4a0 gunicorn-registry stdout | 2025-09-26 08:37:20,656 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083720Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 8fa65d7f1c7ec30410f4eebda62363c34720392d800f71e30ea6fa6a1da9edd4 gunicorn-registry stdout | 2025-09-26 08:37:20,656 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 2f9ced37470bd849ec86e11faae94c09cda01f490188b2097360e00eeadadcc2 gunicorn-registry stdout | 2025-09-26 08:37:20,656 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,656 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:20,656 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:20,671 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df?uploadId=68d650bfd73ec60008f93537 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:20,672 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ggi-dnbbba-dxk', 'x-amz-id-2': 'mg0l9ggi-dnbbba-dxk', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:20 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:20,672 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df"1002d173f1ac21da3076ea46123e1885-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df?uploadId=68d650bfd73ec60008f93537' gunicorn-registry stdout | 2025-09-26 08:37:20,672 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,672 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:20,672 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:20,672 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:20,672 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9ggi-dnbbba-dxk', 'HostId': 'mg0l9ggi-dnbbba-dxk', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ggi-dnbbba-dxk', 'x-amz-id-2': 'mg0l9ggi-dnbbba-dxk', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:20 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df?uploadId=68d650bfd73ec60008f93537', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dd249907-cac2-402b-908c-a4f9db1b44df', 'ETag': '"1002d173f1ac21da3076ea46123e1885-1"'} gunicorn-registry stdout | 2025-09-26 08:37:20,672 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:20,673 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:20,673 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 4130750 bytes to blob 1b0fcd32-b19f-4012-a4d9-77e82ecff97d took 0.8101012706756592 seconds gunicorn-registry stdout | 2025-09-26 08:37:20,674 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['1b0fcd32-b19f-4012-a4d9-77e82ecff97d', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:20,675 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '1b0fcd32-b19f-4012-a4d9-77e82ecff97d', 4130750, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwt2lahf89/sUs4G3qOB9/ovz+q8D/7Vp1ogp/JPHCtx7/Y+fhj9LV+U8VVVRRRW9L/y8AAP//rbbHrQAghgBItD4AAAAAAAAAADz4AQAAAACO26zk8POnnIaCwIPb8pJeO9lfCvvEJc8INM28UTpLKpRiLg==', 9, '{"chunks": [["uploads/dd249907-cac2-402b-908c-a4f9db1b44df", 0, 4130750]]}', 1, 8790016, datetime.datetime(2025, 9, 26, 8, 37, 19, 803227), None, None, 61]) gunicorn-registry stdout | 2025-09-26 08:37:20,677 [251] [DEBUG] [app] Ending request: urn:request:56f81d47-e35f-45b6-a941-e379bd4fb216 (/v2/testorg2/alpine/blobs/uploads/1b0fcd32-b19f-4012-a4d9-77e82ecff97d) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:56f81d47-e35f-45b6-a941-e379bd4fb216', 'remote_addr': '10.129.4.11', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/1b0fcd32-b19f-4012-a4d9-77e82ecff97d', 'path': '/v2/testorg2/alpine/blobs/uploads/1b0fcd32-b19f-4012-a4d9-77e82ecff97d', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:20,677 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:20,677 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:20,678 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:20 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/1b0fcd32-b19f-4012-a4d9-77e82ecff97d HTTP/1.1" 202 0 "-" "skopeo/1.14.5" notificationworker stdout | 2025-09-26 08:37:20,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:37:20,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:30.692901+00:00 (in 9.999589 seconds) notificationworker stdout | 2025-09-26 08:37:20,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:30 GMT)" (scheduled at 2025-09-26 08:37:20.692901+00:00) notificationworker stdout | 2025-09-26 08:37:20,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:37:20,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 37, 20, 693750), True, datetime.datetime(2025, 9, 26, 8, 37, 20, 693750), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:37:20,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:37:20,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:37:20,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:30 GMT)" executed successfully nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:20 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/1b0fcd32-b19f-4012-a4d9-77e82ecff97d HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.879 4132530 0.834) nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:20 +0000] "GET /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9ETTVMQ0pwWVhRaU9qRTNOVGc0TnpVNE16a3NJbVY0Y0NJNk1UYzFPRGczTmpRek9Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4d05pOHdObUpoWWpWbE9EUTNZelUyTnpSa05tVmpNalppTXpReVkyTXhNV1EzWVRBMU1XRTJZVEl6TVdVMVpHSTRZVGsxTldRMU4ySmpPV1kwWVdJMU5UazFQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFFTTJKaVZtdFVXbmhzVVVaWWFIbFlVbkZhTjBSc1Z6WlhZbEVsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRNNUlpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuV3pDU3g0dGFfTi1aZGJKV3J4NDZidTR3RGlnTVY4Z3A0Vk9hRkRJbmN3bGZYQjNna0xCWXByM1hodGpfNVdvY0FYYzlESGh0Z0RKaUJUbEFNZmkxLUR0dVZldFo3ODc4eFRNRFlWYVV1ZG9CMnUzakpWS0R1X0s1RjFtclVwWTVGU3psVVNsZjAtT2h2UWNhWmVVaDUwSmp5MEJmZVV4Z005NU9zT3daUDJCTXBaa1lxa1B4bTBiSDlieE5KanFwQWRPRlF2NDRHSnlBdzAzUVBCRkxfSXlfTnczTDVtaVdkQUVZcmRGYy1FYnpCUlhiZkdYa1pMbERfRXlZOWNoTmJlZnEzcVJyRWxLQnNWUFc4SWVQLW9BWWdmWHNmdVVjRVFpa0dKQUFoMEh2V25wMmlIU1FSNG5oY2NNdTAyN2VmSHpfT2VOdWlPY3RabFBlSDAzM3RB/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/06/06bab5e847c5674d6ec26b342cc11d7a051a6a231e5db8a955d57bc9f4ab5595?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=D3bbVkTZxlQFXhyXRqZ7DlW6WbQ%3D&Expires=1758876439 HTTP/1.1" 200 3478563 "-" "Go-http-client/1.1" (0.492 2403 0.489) gunicorn-registry stdout | 2025-09-26 08:37:20,996 [251] [DEBUG] [app] Starting request: urn:request:ec597628-be39-40a2-8242-4ce2cb8eaab4 (/v2/testorg2/alpine/blobs/sha256:02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:20,997 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:20,997 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:20,997 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:20,998 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:20,998 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:20,998 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:20,998 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:20,998 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:20,998 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,000 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,001 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:21,001 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612_2 gunicorn-registry stdout | 2025-09-26 08:37:21,001 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:21,002 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,003 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,004 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,005 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,006 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,006 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612_2: None gunicorn-registry stdout | 2025-09-26 08:37:21,006 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612_2: None gunicorn-registry stdout | 2025-09-26 08:37:21,006 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:21,007 [251] [DEBUG] [app] Ending request: urn:request:ec597628-be39-40a2-8242-4ce2cb8eaab4 (/v2/testorg2/alpine/blobs/sha256:02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:ec597628-be39-40a2-8242-4ce2cb8eaab4', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612', 'path': '/v2/testorg2/alpine/blobs/sha256:02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:21,007 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:21,007 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:21,007 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:21 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:21 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.012 1718 0.012) gunicorn-registry stdout | 2025-09-26 08:37:21,048 [251] [DEBUG] [app] Starting request: urn:request:ca4f7b0c-1a48-4f15-875e-f94518cc2c69 (/v2/testorg2/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:21,048 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:21,048 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:21,048 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:21,049 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:21,049 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:21,049 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:21,049 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:21,049 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:21,050 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,051 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,052 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,053 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,053 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,055 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,056 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:21,057 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,058 [251] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [3, 'acd1fb55-fada-41e7-8304-82258617f3e7', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 37, 21, 57863)]) gunicorn-registry stdout | 2025-09-26 08:37:21,060 [251] [DEBUG] [app] Ending request: urn:request:ca4f7b0c-1a48-4f15-875e-f94518cc2c69 (/v2/testorg2/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:ca4f7b0c-1a48-4f15-875e-f94518cc2c69', 'remote_addr': '10.129.4.11', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/', 'path': '/v2/testorg2/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:21,060 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:21,060 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:21,060 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:21 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:21 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.014 1697 0.014) gunicorn-registry stdout | 2025-09-26 08:37:21,554 [258] [DEBUG] [app] Starting request: urn:request:32196deb-d0de-46a4-a2ba-ccd075299c5c (/v2/testorg2/alpine/manifests/sha256:4562b419adf48c5f3c763995d6014c123b3ce1d2e0ef2613b189779caa787192) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:21,554 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'manifest_ref': 'sha256:4562b419adf48c5f3c763995d6014c123b3ce1d2e0ef2613b189779caa787192', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:21,554 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:21,554 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:21,555 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:21,555 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:21,555 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:21,555 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:21,555 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:21,557 [258] [DEBUG] [data.cache.cache_key] Loading repository lookup from cache_key: repository_lookup_testorg2_alpine gunicorn-registry stdout | 2025-09-26 08:37:21,557 [258] [DEBUG] [data.cache.impl] Checking cache for key repository_lookup_testorg2_alpine gunicorn-registry stdout | 2025-09-26 08:37:21,557 [258] [DEBUG] [data.cache.impl] Found no result in cache for key repository_lookup_testorg2_alpine; calling loader gunicorn-registry stdout | 2025-09-26 08:37:21,558 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,560 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,561 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,561 [258] [DEBUG] [data.cache.impl] Got loaded result for key repository_lookup_testorg2_alpine: {'id': 3, 'visibility': {'id': 2, 'name': 'private'}, 'kind': {'id': 1, 'name': 'image'}, 'state': , 'namespace_user': {'stripe_id': None}} gunicorn-registry stdout | 2025-09-26 08:37:21,561 [258] [DEBUG] [data.cache.impl] Caching loaded result for key repository_lookup_testorg2_alpine with expiration {'id': 3, 'visibility': {'id': 2, 'name': 'private'}, 'kind': {'id': 1, 'name': 'image'}, 'state': , 'namespace_user': {'stripe_id': None}}: 120s gunicorn-registry stdout | 2025-09-26 08:37:21,561 [258] [DEBUG] [data.cache.impl] Cached loaded result for key repository_lookup_testorg2_alpine with expiration {'id': 3, 'visibility': {'id': 2, 'name': 'private'}, 'kind': {'id': 1, 'name': 'image'}, 'state': , 'namespace_user': {'stripe_id': None}}: 120s gunicorn-registry stdout | 2025-09-26 08:37:21,562 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:4562b419adf48c5f3c763995d6014c123b3ce1d2e0ef2613b189779caa787192', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,565 [258] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL (SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "uploadedblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1")', [3, 'sha256:6e174226ea690ced550e5641249a412cdbefd2d09871f3e64ab52137a54ba606', 1, 3, 'sha256:02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612', 1]) gunicorn-registry stdout | 2025-09-26 08:37:21,567 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."digest" = %s) AND ("t1"."repository_id" = %s)) LIMIT %s OFFSET %s', ['sha256:4562b419adf48c5f3c763995d6014c123b3ce1d2e0ef2613b189779caa787192', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,568 [258] [DEBUG] [peewee] ('INSERT INTO "manifest" ("repository_id", "digest", "media_type_id", "manifest_bytes", "config_media_type", "layers_compressed_size", "subject", "subject_backfilled", "artifact_type", "artifact_type_backfilled") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifest"."id"', [3, 'sha256:4562b419adf48c5f3c763995d6014c123b3ce1d2e0ef2613b189779caa787192', 18, '{\n "schemaVersion": 2,\n "mediaType": "application/vnd.oci.image.manifest.v1+json",\n "config": {\n "mediaType": "application/vnd.oci.image.config.v1+json",\n "digest": "sha256:02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612",\n "size": 597\n },\n "layers": [\n {\n "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",\n "digest": "sha256:6e174226ea690ced550e5641249a412cdbefd2d09871f3e64ab52137a54ba606",\n "size": 4130750\n }\n ],\n "annotations": {\n "com.docker.official-images.bashbrew.arch": "arm64v8",\n "org.opencontainers.image.base.name": "scratch",\n "org.opencontainers.image.created": "2025-07-15T11:01:16Z",\n "org.opencontainers.image.revision": "01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e",\n "org.opencontainers.image.source": "https://github.com/alpinelinux/docker-alpine.git#01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e:aarch64",\n "org.opencontainers.image.url": "https://hub.docker.com/_/alpine",\n "org.opencontainers.image.version": "3.22.1"\n }\n}', 'application/vnd.oci.image.config.v1+json', 4130750, None, True, None, True]) gunicorn-registry stdout | 2025-09-26 08:37:21,569 [258] [DEBUG] [peewee] ('INSERT INTO "manifestblob" ("repository_id", "manifest_id", "blob_id") VALUES (%s, %s, %s), (%s, %s, %s) RETURNING "manifestblob"."id"', [3, 25, 62, 3, 25, 63]) gunicorn-registry stdout | 2025-09-26 08:37:21,570 [258] [DEBUG] [peewee] ('SELECT "t1"."namespace_user_id" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,570 [258] [DEBUG] [peewee] ('SELECT 1 FROM "user" AS "t1" WHERE ((("t1"."id" = %s) AND "t1"."enabled") AND NOT "t1"."robot") LIMIT %s', [4, 1]) gunicorn-registry stdout | 2025-09-26 08:37:21,571 [258] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [4, 62, 25, 1]) gunicorn-registry stdout | 2025-09-26 08:37:21,572 [258] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [4, 63, 25, 1]) gunicorn-registry stdout | 2025-09-26 08:37:21,572 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,572 [258] [INFO] [data.model.quota] updating namespace size for manifest 25 in namespace 4, QuotaOperation.ADD 4131347 gunicorn-registry stdout | 2025-09-26 08:37:21,573 [258] [DEBUG] [peewee] ('UPDATE "quotanamespacesize" SET "size_bytes" = ("quotanamespacesize"."size_bytes" + %s) WHERE ("quotanamespacesize"."namespace_user_id" = %s)', [4131347, 4]) gunicorn-registry stdout | 2025-09-26 08:37:21,573 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotarepositorysize" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,574 [258] [INFO] [data.model.quota] updating repository size for manifest 25 in repository 3, QuotaOperation.ADD 4131347 gunicorn-registry stdout | 2025-09-26 08:37:21,574 [258] [DEBUG] [peewee] ('UPDATE "quotarepositorysize" SET "size_bytes" = ("quotarepositorysize"."size_bytes" + %s) WHERE ("quotarepositorysize"."repository_id" = %s)', [4131347, 3]) gunicorn-registry stdout | 2025-09-26 08:37:21,574 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [25, None, 1758879441574, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,576 [258] [DEBUG] [peewee] ('INSERT INTO "tag" ("name", "repository_id", "manifest_id", "lifetime_start_ms", "lifetime_end_ms", "immutable", "hidden", "reversion", "tag_kind_id") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "tag"."id"', ['$temp-2fee749c-3f26-4121-b761-64687d8a1535', 3, 25, 1758875841574, 1758879441574, False, True, False, 1]) gunicorn-registry stdout | 2025-09-26 08:37:21,578 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,580 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['8b0bb733-7b6e-4402-aac7-06ada985b453']) gunicorn-registry stdout | 2025-09-26 08:37:21,580 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:21,582 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:21,582 [258] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/02/02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612'} gunicorn-registry stdout | 2025-09-26 08:37:21,582 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:21,582 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:21,582 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:21,582 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:21,582 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:21,582 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:21,582 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:21,582 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:21,582 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:21,582 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:21,582 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:21,583 [258] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:21,583 [258] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:21,583 [258] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:21,583 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/02/02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/02/02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/02/02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/02/02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:21,583 [258] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:21,583 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:21,583 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:21,583 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:21,583 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:21,583 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/02/02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083721Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:21,583 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083721Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | eb0821b49a0c7593a6d38d35397bf172bc80f56b1654c070e6e6b44d23acffeb gunicorn-registry stdout | 2025-09-26 08:37:21,583 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 2f8381114e2f63a626cfad07eeb4fe84129c2695145643aaebef3b02a68969b3 gunicorn-registry stdout | 2025-09-26 08:37:21,583 [258] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:21,583 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:21,584 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:21,584 [258] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | 2025-09-26 08:37:21,669 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/02/02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612 HTTP/1.1" 200 597 gunicorn-registry stdout | 2025-09-26 08:37:21,669 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9h6w-ctzoy6-mm', 'x-amz-id-2': 'mg0l9h6w-ctzoy6-mm', 'ETag': '"c2138b8b08a06c698b41a1835d8c262b-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:21 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '597', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:21 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:21,669 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:21,670 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:21,670 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:21,670 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:21,670 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9h6w-ctzoy6-mm', 'HostId': 'mg0l9h6w-ctzoy6-mm', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9h6w-ctzoy6-mm', 'x-amz-id-2': 'mg0l9h6w-ctzoy6-mm', 'etag': '"c2138b8b08a06c698b41a1835d8c262b-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:21 GMT', 'content-type': 'application/octet-stream', 'content-length': '597', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:21 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 21, tzinfo=tzutc()), 'ContentLength': 597, 'ETag': '"c2138b8b08a06c698b41a1835d8c262b-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:21,672 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [25, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,674 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['75b16812-4a20-4adb-81e9-a015f4a6f3c4', 'com.docker.official-images.bashbrew.arch', 'arm64v8', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:21,674 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 25, 78]) gunicorn-registry stdout | 2025-09-26 08:37:21,676 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [25, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,677 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['14323c51-3dcc-4aa4-a8a2-ce94c8349a0d', 'org.opencontainers.image.base.name', 'scratch', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:21,678 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 25, 79]) gunicorn-registry stdout | 2025-09-26 08:37:21,681 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [25, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,682 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['6e99ce96-46da-4c37-b2da-69f0c204c258', 'org.opencontainers.image.created', '2025-07-15T11:01:16Z', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:21,683 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 25, 80]) gunicorn-registry stdout | 2025-09-26 08:37:21,684 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [25, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,686 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['1bec08f2-e920-402e-81b6-5441a298251a', 'org.opencontainers.image.revision', '01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:21,686 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 25, 81]) gunicorn-registry stdout | 2025-09-26 08:37:21,688 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [25, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,689 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['ae3d253a-513e-4f50-a847-abb858e320cf', 'org.opencontainers.image.source', 'https://github.com/alpinelinux/docker-alpine.git#01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e:aarch64', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:21,690 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 25, 82]) gunicorn-registry stdout | 2025-09-26 08:37:21,691 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [25, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,692 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['52798a1a-4676-4988-829a-6de3c612f280', 'org.opencontainers.image.url', 'https://hub.docker.com/_/alpine', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:21,694 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 25, 83]) gunicorn-registry stdout | 2025-09-26 08:37:21,695 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [25, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:21,696 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['7c92b005-7bbc-42f9-83c2-8ad853f692b5', 'org.opencontainers.image.version', '3.22.1', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:21,697 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 25, 84]) gunicorn-registry stdout | 2025-09-26 08:37:21,699 [258] [DEBUG] [app] Ending request: urn:request:32196deb-d0de-46a4-a2ba-ccd075299c5c (/v2/testorg2/alpine/manifests/sha256:4562b419adf48c5f3c763995d6014c123b3ce1d2e0ef2613b189779caa787192) {'endpoint': 'v2.write_manifest_by_digest', 'request_id': 'urn:request:32196deb-d0de-46a4-a2ba-ccd075299c5c', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/manifests/sha256:4562b419adf48c5f3c763995d6014c123b3ce1d2e0ef2613b189779caa787192', 'path': '/v2/testorg2/alpine/manifests/sha256:4562b419adf48c5f3c763995d6014c123b3ce1d2e0ef2613b189779caa787192', 'parameters': {}, 'json_body': {'schemaVersion': 2, 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'config': {'mediaType': 'application/vnd.oci.image.config.v1+json', 'digest': 'sha256:02f8efbefad605a169e89926147edd0676646263268f303c6fb3cdfdbc4a9612', 'size': 597}, 'layers': [{'mediaType': 'application/vnd.oci.image.layer.v1.tar+gzip', 'digest': 'sha256:6e174226ea690ced550e5641249a412cdbefd2d09871f3e64ab52137a54ba606', 'size': 4130750}], 'annotations': {'com.docker.official-images.bashbrew.arch': 'arm64v8', 'org.opencontainers.image.base.name': 'scratch', 'org.opencontainers.image.created': '2025-07-15T11:01:16Z', 'org.opencontainers.image.revision': '01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e', 'org.opencontainers.image.source': 'https://github.com/alpinelinux/docker-alpine.git#01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e:aarch64', 'org.opencontainers.image.url': 'https://hub.docker.com/_/alpine', 'org.opencontainers.image.version': '3.22.1'}}, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:21,699 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:21,699 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:21,699 [258] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:21 +0000] "PUT /v2/testorg2/alpine/manifests/sha256:4562b419adf48c5f3c763995d6014c123b3ce1d2e0ef2613b189779caa787192 HTTP/1.1" 201 2 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:21 +0000] "PUT /v2/testorg2/alpine/manifests/sha256:4562b419adf48c5f3c763995d6014c123b3ce1d2e0ef2613b189779caa787192 HTTP/1.1" 201 2 "-" "skopeo/1.14.5" (0.146 2849 0.146) blobuploadcleanupworker stdout | 2025-09-26 08:37:22,056 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} gunicorn-registry stdout | 2025-09-26 08:37:22,087 [251] [DEBUG] [app] Starting request: urn:request:9e0cb243-afdc-41b8-bb85-d250eae22145 (/v2/testorg2/alpine/blobs/sha256:c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:22,087 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:22,087 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:22,087 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:22,088 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:22,088 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:22,088 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:22,088 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:22,088 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:22,089 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,090 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,091 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:22,091 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58_2 gunicorn-registry stdout | 2025-09-26 08:37:22,091 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:22,093 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,094 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,095 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,096 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,098 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,098 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58_2: None gunicorn-registry stdout | 2025-09-26 08:37:22,098 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58_2: None gunicorn-registry stdout | 2025-09-26 08:37:22,099 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:22,099 [251] [DEBUG] [app] Ending request: urn:request:9e0cb243-afdc-41b8-bb85-d250eae22145 (/v2/testorg2/alpine/blobs/sha256:c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:9e0cb243-afdc-41b8-bb85-d250eae22145', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58', 'path': '/v2/testorg2/alpine/blobs/sha256:c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:22,099 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:22,099 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:22,099 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:22 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:22 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.013 1718 0.013) gunicorn-registry stdout | 2025-09-26 08:37:22,106 [251] [DEBUG] [app] Starting request: urn:request:02c34ddb-6fb4-4814-963b-5e622ddf5567 (/v2/testorg2/alpine/blobs/sha256:4c1312ee48af4b6cb5bc13a04e710b8164b79a1dad0e5a71386c010253eae56b) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:22,106 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:4c1312ee48af4b6cb5bc13a04e710b8164b79a1dad0e5a71386c010253eae56b', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:22,106 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:22,106 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:22,107 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:22,107 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:22,107 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:22,107 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:22,107 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:22,108 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,110 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,110 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:22,110 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:4c1312ee48af4b6cb5bc13a04e710b8164b79a1dad0e5a71386c010253eae56b_2 gunicorn-registry stdout | 2025-09-26 08:37:22,111 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:4c1312ee48af4b6cb5bc13a04e710b8164b79a1dad0e5a71386c010253eae56b_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:22,111 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,112 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,113 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,114 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:4c1312ee48af4b6cb5bc13a04e710b8164b79a1dad0e5a71386c010253eae56b', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,115 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:4c1312ee48af4b6cb5bc13a04e710b8164b79a1dad0e5a71386c010253eae56b', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,117 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:4c1312ee48af4b6cb5bc13a04e710b8164b79a1dad0e5a71386c010253eae56b_2: None gunicorn-registry stdout | 2025-09-26 08:37:22,117 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:4c1312ee48af4b6cb5bc13a04e710b8164b79a1dad0e5a71386c010253eae56b_2: None gunicorn-registry stdout | 2025-09-26 08:37:22,117 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:22,117 [251] [DEBUG] [app] Ending request: urn:request:02c34ddb-6fb4-4814-963b-5e622ddf5567 (/v2/testorg2/alpine/blobs/sha256:4c1312ee48af4b6cb5bc13a04e710b8164b79a1dad0e5a71386c010253eae56b) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:02c34ddb-6fb4-4814-963b-5e622ddf5567', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:4c1312ee48af4b6cb5bc13a04e710b8164b79a1dad0e5a71386c010253eae56b', 'path': '/v2/testorg2/alpine/blobs/sha256:4c1312ee48af4b6cb5bc13a04e710b8164b79a1dad0e5a71386c010253eae56b', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:22,117 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:22,117 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:22,117 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:22 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:4c1312ee48af4b6cb5bc13a04e710b8164b79a1dad0e5a71386c010253eae56b HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:22 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:4c1312ee48af4b6cb5bc13a04e710b8164b79a1dad0e5a71386c010253eae56b HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.012 1718 0.012) gunicorn-registry stdout | 2025-09-26 08:37:22,223 [251] [DEBUG] [app] Starting request: urn:request:5f0f840a-98a8-4761-ac31-305d0018eb26 (/v2/testorg2/alpine/blobs/uploads/c3f9badb-6ae8-435d-8265-7d2f22971c41) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:22,223 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'c3f9badb-6ae8-435d-8265-7d2f22971c41', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:22,223 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:22,223 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:22,224 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:22,224 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:22,225 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:22,225 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:22,225 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:22,225 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,227 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,228 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,229 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,230 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,232 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,232 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,233 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:22,235 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['c3f9badb-6ae8-435d-8265-7d2f22971c41', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,235 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:22,236 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:22,236 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:22,238 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:22,238 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:22,238 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,238 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,238 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,238 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,238 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,238 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,238 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,238 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,239 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:22,239 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:22,239 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:22,239 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:22,239 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,239 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,239 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,239 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:22,239 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,239 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,239 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,239 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,239 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:22,239 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083722Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:22,240 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083722Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 7b30ad97977d6abb0aafbfa0a66f7ddba505f5a96305f3ee7881adece9acba9b gunicorn-registry stdout | 2025-09-26 08:37:22,240 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 491f069f277478d8c55a00b06cb795bdc94a5f018c1ab6d3e54a5018e835e5a1 gunicorn-registry stdout | 2025-09-26 08:37:22,240 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,240 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:22,240 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:22,248 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:22,249 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9hoi-6rphun-1rh', 'x-amz-id-2': 'mg0l9hoi-6rphun-1rh', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:22 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:22,249 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a8668d650c2d73ec60008f93549' gunicorn-registry stdout | 2025-09-26 08:37:22,249 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,249 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:22,249 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,249 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9hoi-6rphun-1rh', 'HostId': 'mg0l9hoi-6rphun-1rh', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9hoi-6rphun-1rh', 'x-amz-id-2': 'mg0l9hoi-6rphun-1rh', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:22 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86', 'UploadId': '68d650c2d73ec60008f93549'} gunicorn-registry stdout | 2025-09-26 08:37:22,249 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:22,250 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:22,250 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:22,250 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86', 'UploadId': '68d650c2d73ec60008f93549', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89fad40>, 'ContentLength': 5748} gunicorn-registry stdout | 2025-09-26 08:37:22,250 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,250 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,250 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,250 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,250 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,250 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,250 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,250 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,251 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:22,251 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:22,251 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:22,251 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:22,251 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,251 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,251 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:22,251 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,251 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,251 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86', 'query_string': {'uploadId': '68d650c2d73ec60008f93549', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '5748', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'ghgaR/F4u0BTlRF13jU1qw==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b89fad40>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86?uploadId=68d650c2d73ec60008f93549&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86', 'UploadId': '68d650c2d73ec60008f93549', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89fad40>, 'ContentLength': 5748}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:22,251 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,251 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,251 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,251 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,252 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:22,252 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86 gunicorn-registry stdout | partNumber=1&uploadId=68d650c2d73ec60008f93549 gunicorn-registry stdout | content-length:5748 gunicorn-registry stdout | content-md5:ghgaR/F4u0BTlRF13jU1qw== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083722Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:22,252 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083722Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 9ff9946dc1c509b6f38d5fcb7faba70f99316ac6587c56328c5f629311840469 gunicorn-registry stdout | 2025-09-26 08:37:22,252 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 6b37c50ec54d2f7e5c5bcb8819ef190493dcf1bbbcb9fb0b479b1c991ec1042e gunicorn-registry stdout | 2025-09-26 08:37:22,252 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,252 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:22,252 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:22,253 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:37:22,254 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:37:22,345 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86?uploadId=68d650c2d73ec60008f93549&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:22,346 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9hou-6yv3bi-19pe', 'x-amz-id-2': 'mg0l9hou-6yv3bi-19pe', 'ETag': '"82181a47f178bb4053951175de3535ab"', 'Date': 'Fri, 26 Sep 2025 08:37:22 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:22,346 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:22,346 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,347 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:22,347 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,347 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9hou-6yv3bi-19pe', 'HostId': 'mg0l9hou-6yv3bi-19pe', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9hou-6yv3bi-19pe', 'x-amz-id-2': 'mg0l9hou-6yv3bi-19pe', 'etag': '"82181a47f178bb4053951175de3535ab"', 'date': 'Fri, 26 Sep 2025 08:37:22 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"82181a47f178bb4053951175de3535ab"'} gunicorn-registry stdout | 2025-09-26 08:37:22,347 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86', 'UploadId': '68d650c2d73ec60008f93549', 'MultipartUpload': {'Parts': [{'ETag': '"82181a47f178bb4053951175de3535ab"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:22,347 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,347 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,347 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,347 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,347 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,347 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,347 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,347 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:22,347 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:22,348 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:22,348 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:22,348 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,348 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,348 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,348 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86', 'query_string': {'uploadId': '68d650c2d73ec60008f93549'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"82181a47f178bb4053951175de3535ab"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86?uploadId=68d650c2d73ec60008f93549', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86', 'UploadId': '68d650c2d73ec60008f93549', 'MultipartUpload': {'Parts': [{'ETag': '"82181a47f178bb4053951175de3535ab"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:22,348 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,348 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,348 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,349 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,349 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:22,349 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86 gunicorn-registry stdout | uploadId=68d650c2d73ec60008f93549 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e007fc7cab2e163e9202252d3711bb1542c4727651763ad533f1007a79e9767b gunicorn-registry stdout | x-amz-date:20250926T083722Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e007fc7cab2e163e9202252d3711bb1542c4727651763ad533f1007a79e9767b gunicorn-registry stdout | 2025-09-26 08:37:22,349 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083722Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | ebe11196706c56c1630ec15338bdc219069011643c46abfd695bb73ddad4efc2 gunicorn-registry stdout | 2025-09-26 08:37:22,349 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | b870df7f65bc1da7704225bed9e492ec1c11820ec01da1eef08fcea4074cbe5b gunicorn-registry stdout | 2025-09-26 08:37:22,349 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,349 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:22,349 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:22,365 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86?uploadId=68d650c2d73ec60008f93549 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:22,365 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9hrj-8kkie4-81w', 'x-amz-id-2': 'mg0l9hrj-8kkie4-81w', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:22 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:22,366 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86"f65f95334f6e5a433fde4e07ebfc8e20-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86?uploadId=68d650c2d73ec60008f93549' gunicorn-registry stdout | 2025-09-26 08:37:22,366 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,366 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,366 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:22,366 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,366 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9hrj-8kkie4-81w', 'HostId': 'mg0l9hrj-8kkie4-81w', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9hrj-8kkie4-81w', 'x-amz-id-2': 'mg0l9hrj-8kkie4-81w', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:22 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86?uploadId=68d650c2d73ec60008f93549', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86', 'ETag': '"f65f95334f6e5a433fde4e07ebfc8e20-1"'} gunicorn-registry stdout | 2025-09-26 08:37:22,366 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:22,368 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:22,368 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 5748 bytes to blob c3f9badb-6ae8-435d-8265-7d2f22971c41 took 0.132551908493042 seconds gunicorn-registry stdout | 2025-09-26 08:37:22,369 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['c3f9badb-6ae8-435d-8265-7d2f22971c41', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,371 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, 'c3f9badb-6ae8-435d-8265-7d2f22971c41', 5748, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwdHRwczovL21vYnlwcm9qZWN0Lm9yZy9idWlsZGtpdEB2MSNoZXJtZXRpYyI6dHJ1ZX19fTA3NTB9XV19fSwiaDQAAAAAAAAAALIAAAAAAACi/LfvMGXHRY6VqRjgXyQwLMc5S2G1G+mjgYCqiPq3OpRiLg==', 9, '{"chunks": [["uploads/7e382928-e5ce-4849-bac9-5460381b4a86", 0, 5748]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 37, 22, 175168), None, None, 63]) gunicorn-registry stdout | 2025-09-26 08:37:22,373 [251] [DEBUG] [app] Ending request: urn:request:5f0f840a-98a8-4761-ac31-305d0018eb26 (/v2/testorg2/alpine/blobs/uploads/c3f9badb-6ae8-435d-8265-7d2f22971c41) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:5f0f840a-98a8-4761-ac31-305d0018eb26', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/c3f9badb-6ae8-435d-8265-7d2f22971c41', 'path': '/v2/testorg2/alpine/blobs/uploads/c3f9badb-6ae8-435d-8265-7d2f22971c41', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:22,374 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:22,374 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:22,374 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:22 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/c3f9badb-6ae8-435d-8265-7d2f22971c41 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:22 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/c3f9badb-6ae8-435d-8265-7d2f22971c41 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.153 7525 0.152) gunicorn-registry stdout | 2025-09-26 08:37:22,421 [251] [DEBUG] [app] Starting request: urn:request:995c70ff-bbaa-434a-899b-0e7e76756ca4 (/v2/testorg2/alpine/blobs/uploads/c3f9badb-6ae8-435d-8265-7d2f22971c41) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:22,421 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'c3f9badb-6ae8-435d-8265-7d2f22971c41', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:22,421 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:22,421 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:22,422 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:22,423 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:22,423 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:22,423 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:22,423 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:22,424 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,426 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,427 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,428 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,429 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,430 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,431 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,432 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:22,433 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['c3f9badb-6ae8-435d-8265-7d2f22971c41', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,434 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:22,434 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:22,434 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:22,435 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:22,435 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dfa20dfa-da92-4e12-8075-27fbc228725c', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:22,435 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,435 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,435 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,435 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,435 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,435 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,435 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,436 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,436 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:22,436 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:22,436 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:22,436 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:22,436 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,436 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,436 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,436 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/dfa20dfa-da92-4e12-8075-27fbc228725c?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dfa20dfa-da92-4e12-8075-27fbc228725c', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dfa20dfa-da92-4e12-8075-27fbc228725c?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dfa20dfa-da92-4e12-8075-27fbc228725c', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:22,436 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,436 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,436 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,436 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,437 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:22,437 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dfa20dfa-da92-4e12-8075-27fbc228725c gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083722Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:22,437 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083722Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | c3097afbfe291e99b4be10c5d61a1addc123960f24051b13a033cb5442b13e2e gunicorn-registry stdout | 2025-09-26 08:37:22,437 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | a4fea70925a8be3ebd55afe17e6ad340a5670f869bb2ace05236f4ae9c89c5bf gunicorn-registry stdout | 2025-09-26 08:37:22,437 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,437 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:22,437 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:22,444 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dfa20dfa-da92-4e12-8075-27fbc228725c?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:22,444 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9htz-a101li-v5f', 'x-amz-id-2': 'mg0l9htz-a101li-v5f', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:22 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:22,444 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/dfa20dfa-da92-4e12-8075-27fbc228725c68d650c2d73ec60008f93555' gunicorn-registry stdout | 2025-09-26 08:37:22,445 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,445 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:22,445 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,445 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9htz-a101li-v5f', 'HostId': 'mg0l9htz-a101li-v5f', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9htz-a101li-v5f', 'x-amz-id-2': 'mg0l9htz-a101li-v5f', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:22 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dfa20dfa-da92-4e12-8075-27fbc228725c', 'UploadId': '68d650c2d73ec60008f93555'} gunicorn-registry stdout | 2025-09-26 08:37:22,445 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:22,446 [251] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dfa20dfa-da92-4e12-8075-27fbc228725c', 'UploadId': '68d650c2d73ec60008f93555'} gunicorn-registry stdout | 2025-09-26 08:37:22,446 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,446 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,446 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,446 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,446 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,446 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,446 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:22,446 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:22,446 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:22,446 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:22,446 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,446 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,447 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,447 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/dfa20dfa-da92-4e12-8075-27fbc228725c', 'query_string': {'uploadId': '68d650c2d73ec60008f93555'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dfa20dfa-da92-4e12-8075-27fbc228725c', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dfa20dfa-da92-4e12-8075-27fbc228725c?uploadId=68d650c2d73ec60008f93555', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/dfa20dfa-da92-4e12-8075-27fbc228725c', 'UploadId': '68d650c2d73ec60008f93555'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:22,447 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,447 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,447 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,447 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,447 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:22,447 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dfa20dfa-da92-4e12-8075-27fbc228725c gunicorn-registry stdout | uploadId=68d650c2d73ec60008f93555 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083722Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:22,447 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083722Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 57e00447866967169b2d5a4f0980c18022123222eae3653d42059b8dbb64cf65 gunicorn-registry stdout | 2025-09-26 08:37:22,447 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 554746afad2b98f0ae4a461156b23a1e08331bd4489ec78c0a50defe6feb2adb gunicorn-registry stdout | 2025-09-26 08:37:22,447 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,447 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:22,448 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:22,460 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/dfa20dfa-da92-4e12-8075-27fbc228725c?uploadId=68d650c2d73ec60008f93555 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:37:22,460 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9hu9-a73bae-1bnk', 'x-amz-id-2': 'mg0l9hu9-a73bae-1bnk', 'Date': 'Fri, 26 Sep 2025 08:37:22 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:22,460 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:22,460 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,461 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:22,461 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,461 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9hu9-a73bae-1bnk', 'HostId': 'mg0l9hu9-a73bae-1bnk', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9hu9-a73bae-1bnk', 'x-amz-id-2': 'mg0l9hu9-a73bae-1bnk', 'date': 'Fri, 26 Sep 2025 08:37:22 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:37:22,461 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob c3f9badb-6ae8-435d-8265-7d2f22971c41 took 0.026720285415649414 seconds gunicorn-registry stdout | 2025-09-26 08:37:22,461 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['c3f9badb-6ae8-435d-8265-7d2f22971c41', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,463 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, 'c3f9badb-6ae8-435d-8265-7d2f22971c41', 5748, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwdHRwczovL21vYnlwcm9qZWN0Lm9yZy9idWlsZGtpdEB2MSNoZXJtZXRpYyI6dHJ1ZX19fTA3NTB9XV19fSwiaDQAAAAAAAAAALIAAAAAAACi/LfvMGXHRY6VqRjgXyQwLMc5S2G1G+mjgYCqiPq3OpRiLg==', 9, '{"chunks": [["uploads/7e382928-e5ce-4849-bac9-5460381b4a86", 0, 5748]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 37, 22, 175168), None, None, 63]) gunicorn-registry stdout | 2025-09-26 08:37:22,464 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:22,465 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:22,465 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:22,465 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:22,466 [251] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/c0/c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58'} gunicorn-registry stdout | 2025-09-26 08:37:22,466 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,466 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,466 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,466 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,466 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,466 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,466 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,466 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:22,466 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:22,466 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:22,466 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:22,467 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,467 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,467 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,467 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/c0/c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c0/c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c0/c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/c0/c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:22,467 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,467 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,467 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,467 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,467 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:22,467 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c0/c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083722Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:22,467 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083722Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 8295fb4924a4937ad07ae0b1ad1b4448e7e51b565df15886c07c4edf6560b25e gunicorn-registry stdout | 2025-09-26 08:37:22,467 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 24620d182936b3f7a16524dacee0fe37f6929b536d96e387f09341536e5ae8f6 gunicorn-registry stdout | 2025-09-26 08:37:22,468 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,468 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:22,468 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:22,476 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c0/c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:37:22,476 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9huu-ajefts-lnb', 'x-amz-id-2': 'mg0l9huu-ajefts-lnb', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:22 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:22,476 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:22,476 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,477 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:22,477 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,477 [251] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:37:22,477 [251] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:37:22,477 [251] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/c0/c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58 gunicorn-registry stdout | 2025-09-26 08:37:22,477 [251] [DEBUG] [s3transfer.utils] Acquiring 0 proxycacheblobworker stdout | 2025-09-26 08:37:22,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:37:22,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:26.483749+00:00 (in 4.005790 seconds) gunicorn-registry stdout | 2025-09-26 08:37:22,478 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:22,478 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:22,478 [251] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:37:22,478 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,478 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,478 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,478 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,478 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,478 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,478 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,478 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:22,478 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 proxycacheblobworker stdout | 2025-09-26 08:37:22,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:32 GMT)" (scheduled at 2025-09-26 08:37:22.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:37:22,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. gunicorn-registry stdout | 2025-09-26 08:37:22,478 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:22,478 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:22,478 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,478 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler proxycacheblobworker stdout | 2025-09-26 08:37:22,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 37, 22, 478446), True, datetime.datetime(2025, 9, 26, 8, 37, 22, 478446), 0, 'proxycacheblob/%', 50, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,479 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,479 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:22,479 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,479 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,479 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,480 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,480 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,480 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:22,480 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083722Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:22,480 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083722Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | ece3446faf131944307ab0dfd0aefab65729e3be9ac7ed6747b27bf3a379058b gunicorn-registry stdout | 2025-09-26 08:37:22,480 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 2db0b188ff6347edf5ff96e470c78e00f6b8e7867496c6eebb7cabc9827e016d gunicorn-registry stdout | 2025-09-26 08:37:22,480 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,480 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,480 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:22,480 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem proxycacheblobworker stdout | 2025-09-26 08:37:22,485 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:37:22,485 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:37:22,485 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:32 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:37:22,486 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:22,487 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9hv5-aqd61p-21i', 'x-amz-id-2': 'mg0l9hv5-aqd61p-21i', 'ETag': '"f65f95334f6e5a433fde4e07ebfc8e20-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:22 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '5748', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:22 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:22,487 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:22,487 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,487 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:22,487 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,487 [251] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/c0/c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:37:22,487 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:22,488 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/c0/c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:22,488 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/c0/c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:22,488 [251] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/c0/c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/c0/c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58', 'extra_args': {}, 'callbacks': [], 'size': 5748} gunicorn-registry stdout | 2025-09-26 08:37:22,488 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,488 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,488 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,488 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,488 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,488 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,488 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,488 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,488 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,488 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,488 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:22,488 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:22,488 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:22,489 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:22,489 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,489 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,489 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,489 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/c0/c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c0/c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c0/c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/c0/c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:22,489 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,489 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,489 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,489 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,489 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,489 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:22,489 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c0/c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/7e382928-e5ce-4849-bac9-5460381b4a86 gunicorn-registry stdout | x-amz-date:20250926T083722Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:22,489 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083722Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 2fd602e1ba3c5a792d4020bd59fa67bb1484b30103e696bc50eec87e508890fc gunicorn-registry stdout | 2025-09-26 08:37:22,489 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | e27436e7139a77f0b7b07bc61df3fbad8aee72f53831a644c609a3c3c0f4160c gunicorn-registry stdout | 2025-09-26 08:37:22,489 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,489 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,489 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:22,490 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:22,490 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:22,551 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/c0/c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:37:22,551 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9hvf-aw0g1u-ohp', 'x-amz-id-2': 'mg0l9hvf-aw0g1u-ohp', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:37:22 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:22,552 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:37:22.000Z"f65f95334f6e5a433fde4e07ebfc8e20-1"' gunicorn-registry stdout | 2025-09-26 08:37:22,552 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,552 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:22,552 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:22,552 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:22,552 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:22,553 [251] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob c3f9badb-6ae8-435d-8265-7d2f22971c41 with digest sha256:c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58 took 0.07600021362304688 seconds gunicorn-registry stdout | 2025-09-26 08:37:22,553 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['c3f9badb-6ae8-435d-8265-7d2f22971c41', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,554 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,555 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['1d0dae07-20a1-4d7b-98ad-14dd85017a7f', 5748, None, True, True, 'sha256:c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58']) gunicorn-registry stdout | 2025-09-26 08:37:22,556 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [64, 9]) gunicorn-registry stdout | 2025-09-26 08:37:22,557 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,557 [251] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [3, 64, datetime.datetime(2025, 9, 26, 8, 37, 22, 557540), datetime.datetime(2025, 9, 26, 9, 37, 22, 557525)]) gunicorn-registry stdout | 2025-09-26 08:37:22,558 [251] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [63]) gunicorn-registry stdout | 2025-09-26 08:37:22,560 [251] [DEBUG] [app] Ending request: urn:request:995c70ff-bbaa-434a-899b-0e7e76756ca4 (/v2/testorg2/alpine/blobs/uploads/c3f9badb-6ae8-435d-8265-7d2f22971c41) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:995c70ff-bbaa-434a-899b-0e7e76756ca4', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/c3f9badb-6ae8-435d-8265-7d2f22971c41?digest=sha256:c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58', 'path': '/v2/testorg2/alpine/blobs/uploads/c3f9badb-6ae8-435d-8265-7d2f22971c41', 'parameters': {'digest': 'sha256:c03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:22,560 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:22,560 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:22,560 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:22 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/c3f9badb-6ae8-435d-8265-7d2f22971c41?digest=sha256%3Ac03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:22 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/c3f9badb-6ae8-435d-8265-7d2f22971c41?digest=sha256%3Ac03aca438ba0cf5658ce37a01bd055c6ec48f88f2ebd6fc7a4c20cd0bbe84d58 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.140 1853 0.140) gunicorn-registry stdout | 2025-09-26 08:37:22,848 [251] [DEBUG] [app] Starting request: urn:request:b1e1954d-7aaa-4d85-bb57-1157a9cf44cf (/v2/testorg2/alpine/blobs/sha256:6b7d99a4282370d24baba2f47786914682565ab8a55821d74fafd264dd9e5c3a) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:22,849 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:6b7d99a4282370d24baba2f47786914682565ab8a55821d74fafd264dd9e5c3a', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:22,849 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:22,849 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:22,850 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:22,850 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:22,850 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:22,850 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:22,851 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:22,852 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,853 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,855 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:22,855 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:6b7d99a4282370d24baba2f47786914682565ab8a55821d74fafd264dd9e5c3a_2 gunicorn-registry stdout | 2025-09-26 08:37:22,855 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:6b7d99a4282370d24baba2f47786914682565ab8a55821d74fafd264dd9e5c3a_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:22,856 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,858 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,858 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,860 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:6b7d99a4282370d24baba2f47786914682565ab8a55821d74fafd264dd9e5c3a', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,861 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:6b7d99a4282370d24baba2f47786914682565ab8a55821d74fafd264dd9e5c3a', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:22,862 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:6b7d99a4282370d24baba2f47786914682565ab8a55821d74fafd264dd9e5c3a_2: None gunicorn-registry stdout | 2025-09-26 08:37:22,862 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:6b7d99a4282370d24baba2f47786914682565ab8a55821d74fafd264dd9e5c3a_2: None gunicorn-registry stdout | 2025-09-26 08:37:22,862 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:22,862 [251] [DEBUG] [app] Ending request: urn:request:b1e1954d-7aaa-4d85-bb57-1157a9cf44cf (/v2/testorg2/alpine/blobs/sha256:6b7d99a4282370d24baba2f47786914682565ab8a55821d74fafd264dd9e5c3a) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:b1e1954d-7aaa-4d85-bb57-1157a9cf44cf', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:6b7d99a4282370d24baba2f47786914682565ab8a55821d74fafd264dd9e5c3a', 'path': '/v2/testorg2/alpine/blobs/sha256:6b7d99a4282370d24baba2f47786914682565ab8a55821d74fafd264dd9e5c3a', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:22,862 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:22,863 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:22,863 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:22 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:6b7d99a4282370d24baba2f47786914682565ab8a55821d74fafd264dd9e5c3a HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:22 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:6b7d99a4282370d24baba2f47786914682565ab8a55821d74fafd264dd9e5c3a HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.016 1718 0.016) gunicorn-web stdout | 2025-09-26 08:37:23,263 [250] [DEBUG] [app] Starting request: urn:request:5d22ee0d-47df-4318-8643-6bee5c4ac517 (/_storage_proxy_auth) {'X-Forwarded-For': '3.147.184.98'} gunicorn-web stdout | 2025-09-26 08:37:23,263 [250] [DEBUG] [storage.downloadproxy] Got token b'eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODQyLCJpYXQiOjE3NTg4NzU4NDIsImV4cCI6MTc1ODg3NjQ0Miwic3ViIjoic3RvcmFnZXByb3h5IiwiYWNjZXNzIjpbeyJ0eXBlIjoic3RvcmFnZXByb3h5IiwidXJpIjoicXVheS1kYXRhc3RvcmUtZTI5YzM5OTQtNjJlYi00ZTlmLTk1NTAtYmFhMTFmODc0MDg0L2RhdGFzdG9yYWdlL3JlZ2lzdHJ5L3NoYTI1Ni9hYi9hYmE2Yzc4ODA0NDVkMWI5ZWNkMzllZWYxM2VhOGRhMWIyYWQyMDVjMTEyM2U0ZGJiOTAzNjhlNjI1ZTkyNTg0P0FXU0FjY2Vzc0tleUlkPUtxVUFodjYwQUdsQUREcTBNY0taJlNpZ25hdHVyZT1Va3BvcjkzNFU5TEo1SG5hSjFIZm5Ec2dCdEUlM0QmRXhwaXJlcz0xNzU4ODc2NDQyIiwiaG9zdCI6InMzLm9wZW5zaGlmdC1zdG9yYWdlLnN2Yy5jbHVzdGVyLmxvY2FsOjQ0MyIsInNjaGVtZSI6Imh0dHBzIn1dLCJjb250ZXh0Ijp7fX0.rhc8d6WoVew5_W943k1l8Bmzmfs0Fyq0GU_fHWJwL9150iZjfjdbI02H7bheKgKiZlrZA31ozx0oSTpnKM2_ZrbR9fA8FLq_tWtPIrPKXVqsS2ObbvE6JlCvyUW_EHoDQmaWweDSYsUns5deubxvQPQZl2RHZSsABtCTLhltrIN_7NKYl9ats4QBCKXVAPFybLIgRlP024zVCboXYT4mtCmjP_Zbsh8Se_BkDyZ0uJejNvICh3J6IiCNSF42_Njrh--lIj917aP0KVlqXOa8LMZoT-GqHq0rl95P2K_aDE7k5D9nG7OLyZebNsGeJUx3uKsCZuG0D88aUmgRZsFJbg' for storage proxy auth request /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EUXlMQ0pwWVhRaU9qRTNOVGc0TnpVNE5ESXNJbVY0Y0NJNk1UYzFPRGczTmpRME1pd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aFlpOWhZbUUyWXpjNE9EQTBORFZrTVdJNVpXTmtNemxsWldZeE0yVmhPR1JoTVdJeVlXUXlNRFZqTVRFeU0yVTBaR0ppT1RBek5qaGxOakkxWlRreU5UZzBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFWYTNCdmNqa3pORlU1VEVvMVNHNWhTakZJWm01RWMyZENkRVVsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRReUlpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAucmhjOGQ2V29WZXc1X1c5NDNrMWw4Qm16bWZzMEZ5cTBHVV9mSFdKd0w5MTUwaVpqZmpkYkkwMkg3YmhlS2dLaVpsclpBMzFvengwb1NUcG5LTTJfWnJiUjlmQThGTHFfdFd0UElyUEtYVnFzUzJPYmJ2RTZKbEN2eVVXX0VIb0RRbWFXd2VEU1lzVW5zNWRldWJ4dlFQUVpsMlJIWlNzQUJ0Q1RMaGx0cklOXzdOS1lsOWF0czRRQkNLWFZBUEZ5YkxJZ1JsUDAyNHpWQ2JvWFlUNG10Q21qUF9aYnNoOFNlX0JrRHlaMHVKZWpOdklDaDNKNklpQ05TRjQyX05qcmgtLWxJajkxN2FQMEtWbHFYT2E4TE1ab1QtR3FIcTBybDk1UDJLX2FERTdrNUQ5bkc3T0x5WmViTnNHZUpVeDN1S3NDWnVHMEQ4OGFVbWdSWnNGSmJn/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ab/aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=Ukpor934U9LJ5HnaJ1HfnDsgBtE%3D&Expires=1758876442 with parts ['ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EUXlMQ0pwWVhRaU9qRTNOVGc0TnpVNE5ESXNJbVY0Y0NJNk1UYzFPRGczTmpRME1pd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aFlpOWhZbUUyWXpjNE9EQTBORFZrTVdJNVpXTmtNemxsWldZeE0yVmhPR1JoTVdJeVlXUXlNRFZqTVRFeU0yVTBaR0ppT1RBek5qaGxOakkxWlRreU5UZzBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFWYTNCdmNqa3pORlU1VEVvMVNHNWhTakZJWm01RWMyZENkRVVsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRReUlpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAucmhjOGQ2V29WZXc1X1c5NDNrMWw4Qm16bWZzMEZ5cTBHVV9mSFdKd0w5MTUwaVpqZmpkYkkwMkg3YmhlS2dLaVpsclpBMzFvengwb1NUcG5LTTJfWnJiUjlmQThGTHFfdFd0UElyUEtYVnFzUzJPYmJ2RTZKbEN2eVVXX0VIb0RRbWFXd2VEU1lzVW5zNWRldWJ4dlFQUVpsMlJIWlNzQUJ0Q1RMaGx0cklOXzdOS1lsOWF0czRRQkNLWFZBUEZ5YkxJZ1JsUDAyNHpWQ2JvWFlUNG10Q21qUF9aYnNoOFNlX0JrRHlaMHVKZWpOdklDaDNKNklpQ05TRjQyX05qcmgtLWxJajkxN2FQMEtWbHFYT2E4TE1ab1QtR3FIcTBybDk1UDJLX2FERTdrNUQ5bkc3T0x5WmViTnNHZUpVeDN1S3NDWnVHMEQ4OGFVbWdSWnNGSmJn', 'https', 's3.openshift-storage.svc.cluster.local:443', 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ab/aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=Ukpor934U9LJ5HnaJ1HfnDsgBtE%3D&Expires=1758876442'] gunicorn-web stdout | 2025-09-26 08:37:23,264 [250] [DEBUG] [app] Ending request: urn:request:5d22ee0d-47df-4318-8643-6bee5c4ac517 (/_storage_proxy_auth) {'endpoint': '_storage_proxy_auth', 'request_id': 'urn:request:5d22ee0d-47df-4318-8643-6bee5c4ac517', 'remote_addr': '3.147.184.98', 'http_method': 'GET', 'original_url': 'https://web_app_server/_storage_proxy_auth', 'path': '/_storage_proxy_auth', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'Go-http-client/1.1'} gunicorn-web stdout | 2025-09-26 08:37:23,265 [250] [INFO] [gunicorn.access] 3.147.184.98 - - [26/Sep/2025:08:37:23 +0000] "GET /_storage_proxy_auth HTTP/1.0" 200 2 "-" "Go-http-client/1.1" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:23 +0000] "GET /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EUXlMQ0pwWVhRaU9qRTNOVGc0TnpVNE5ESXNJbVY0Y0NJNk1UYzFPRGczTmpRME1pd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aFlpOWhZbUUyWXpjNE9EQTBORFZrTVdJNVpXTmtNemxsWldZeE0yVmhPR1JoTVdJeVlXUXlNRFZqTVRFeU0yVTBaR0ppT1RBek5qaGxOakkxWlRreU5UZzBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFWYTNCdmNqa3pORlU1VEVvMVNHNWhTakZJWm01RWMyZENkRVVsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRReUlpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAucmhjOGQ2V29WZXc1X1c5NDNrMWw4Qm16bWZzMEZ5cTBHVV9mSFdKd0w5MTUwaVpqZmpkYkkwMkg3YmhlS2dLaVpsclpBMzFvengwb1NUcG5LTTJfWnJiUjlmQThGTHFfdFd0UElyUEtYVnFzUzJPYmJ2RTZKbEN2eVVXX0VIb0RRbWFXd2VEU1lzVW5zNWRldWJ4dlFQUVpsMlJIWlNzQUJ0Q1RMaGx0cklOXzdOS1lsOWF0czRRQkNLWFZBUEZ5YkxJZ1JsUDAyNHpWQ2JvWFlUNG10Q21qUF9aYnNoOFNlX0JrRHlaMHVKZWpOdklDaDNKNklpQ05TRjQyX05qcmgtLWxJajkxN2FQMEtWbHFYT2E4TE1ab1QtR3FIcTBybDk1UDJLX2FERTdrNUQ5bkc3T0x5WmViTnNHZUpVeDN1S3NDWnVHMEQ4OGFVbWdSWnNGSmJn/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/ab/aba6c7880445d1b9ecd39eef13ea8da1b2ad205c1123e4dbb90368e625e92584?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=Ukpor934U9LJ5HnaJ1HfnDsgBtE%3D&Expires=1758876442 HTTP/1.1" 200 1829 "-" "Go-http-client/1.1" (0.132 2403 0.127) gunicorn-registry stdout | 2025-09-26 08:37:23,683 [258] [DEBUG] [app] Starting request: urn:request:beeeb539-3cbd-4074-b650-c7d1f7576108 (/v2/testorg2/alpine/blobs/sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:23,683 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:23,683 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:23,683 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:23,685 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:23,685 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:23,685 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:23,685 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:23,685 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:23,686 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,687 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,688 [258] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:23,688 [258] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888_2 gunicorn-registry stdout | 2025-09-26 08:37:23,688 [258] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:23,689 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,691 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,691 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,692 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,694 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,695 [258] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888_2: None gunicorn-registry stdout | 2025-09-26 08:37:23,695 [258] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888_2: None gunicorn-registry stdout | 2025-09-26 08:37:23,695 [258] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:23,695 [258] [DEBUG] [app] Ending request: urn:request:beeeb539-3cbd-4074-b650-c7d1f7576108 (/v2/testorg2/alpine/blobs/sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:beeeb539-3cbd-4074-b650-c7d1f7576108', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888', 'path': '/v2/testorg2/alpine/blobs/sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:23,695 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:23,696 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:23,696 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:23 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:23 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.014 1718 0.014) gunicorn-registry stdout | 2025-09-26 08:37:23,846 [258] [DEBUG] [app] Starting request: urn:request:2814ed0f-91ac-4edd-8b8b-2a42448b5894 (/v2/testorg2/alpine/blobs/sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:23,846 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:23,846 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:23,846 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:23,847 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:23,847 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:23,847 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:23,847 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:23,847 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:23,848 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,849 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,850 [258] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:23,850 [258] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888_2 gunicorn-registry stdout | 2025-09-26 08:37:23,851 [258] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:23,851 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,852 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,853 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,854 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,855 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,856 [258] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888_2: None gunicorn-registry stdout | 2025-09-26 08:37:23,856 [258] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888_2: None gunicorn-registry stdout | 2025-09-26 08:37:23,856 [258] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:23,857 [258] [DEBUG] [app] Ending request: urn:request:2814ed0f-91ac-4edd-8b8b-2a42448b5894 (/v2/testorg2/alpine/blobs/sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:2814ed0f-91ac-4edd-8b8b-2a42448b5894', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888', 'path': '/v2/testorg2/alpine/blobs/sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:23,857 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:23,857 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:23,857 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:23 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:23 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.012 1718 0.012) gunicorn-registry stdout | 2025-09-26 08:37:23,975 [258] [DEBUG] [app] Starting request: urn:request:4c7e9754-8514-4fe0-9182-f7f2cd30e331 (/v2/testorg2/alpine/blobs/uploads/0bd55477-53c7-40d1-a161-4e400e649842) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:23,975 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '0bd55477-53c7-40d1-a161-4e400e649842', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:23,975 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:23,975 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:23,976 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:23,976 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:23,976 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:23,976 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:23,976 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:23,977 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,979 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,980 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,981 [258] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,982 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,982 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,983 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,985 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:23,986 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['0bd55477-53c7-40d1-a161-4e400e649842', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:23,986 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:23,987 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:23,987 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:23,988 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:23,988 [258] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:23,988 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:23,988 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:23,988 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:23,989 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:23,989 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:23,989 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:23,989 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:23,989 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:23,989 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:23,989 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:23,989 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:23,989 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:23,989 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:23,989 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:23,989 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:23,989 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:23,989 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:23,989 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:23,989 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:23,989 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:23,990 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:23,990 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083723Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:23,990 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083723Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 7b7053353c3ddf0b4f8f3ccf1e535bbec049b6040e9897cbb73d8195724e8425 gunicorn-registry stdout | 2025-09-26 08:37:23,990 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 337aa563e03c508be3e32dbdd0eb91492e3261358d393b5e4230e29eae120ba9 gunicorn-registry stdout | 2025-09-26 08:37:23,990 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:23,990 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:23,990 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:23,996 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:23,997 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9j13-2mpaui-asa', 'x-amz-id-2': 'mg0l9j13-2mpaui-asa', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:23 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:23,997 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd259360168d650c3d73ec60008f93564' gunicorn-registry stdout | 2025-09-26 08:37:23,997 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:23,997 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:23,997 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:23,997 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9j13-2mpaui-asa', 'HostId': 'mg0l9j13-2mpaui-asa', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9j13-2mpaui-asa', 'x-amz-id-2': 'mg0l9j13-2mpaui-asa', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:23 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601', 'UploadId': '68d650c3d73ec60008f93564'} gunicorn-registry stdout | 2025-09-26 08:37:23,997 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-web stdout | 2025-09-26 08:37:24,152 [247] [DEBUG] [app] Starting request: urn:request:13bcd572-fc0b-4a22-9609-004a65672a9f (/_storage_proxy_auth) {'X-Forwarded-For': '3.147.184.98'} gunicorn-web stdout | 2025-09-26 08:37:24,153 [247] [DEBUG] [storage.downloadproxy] Got token b'eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODQzLCJpYXQiOjE3NTg4NzU4NDMsImV4cCI6MTc1ODg3NjQ0Mywic3ViIjoic3RvcmFnZXByb3h5IiwiYWNjZXNzIjpbeyJ0eXBlIjoic3RvcmFnZXByb3h5IiwidXJpIjoicXVheS1kYXRhc3RvcmUtZTI5YzM5OTQtNjJlYi00ZTlmLTk1NTAtYmFhMTFmODc0MDg0L2RhdGFzdG9yYWdlL3JlZ2lzdHJ5L3NoYTI1Ni81ZS81ZWUwNjRmODc2NGIwOWE2NDgyOWI1ODcwNTIxOWE4OGUwYjEzMjQzZjdmNDAzZDY2YWMwYzYzOTY0MDQyNmE1P0FXU0FjY2Vzc0tleUlkPUtxVUFodjYwQUdsQUREcTBNY0taJlNpZ25hdHVyZT1qNlNlWiUyQmc3aTNiZWdnYUtYYTNvSmRoT3BiZyUzRCZFeHBpcmVzPTE3NTg4NzY0NDMiLCJob3N0IjoiczMub3BlbnNoaWZ0LXN0b3JhZ2Uuc3ZjLmNsdXN0ZXIubG9jYWw6NDQzIiwic2NoZW1lIjoiaHR0cHMifV0sImNvbnRleHQiOnt9fQ.emoXzhhwjkNw3IwMRReraqNZTBJ-Sz9Zo3tZZmQuYcZQsme9Bgamdw5RX9axbT5WUcLgrZzQjwQr_9Zazr7yXklRF__ejhP8DB265lMaNe8KpKGrwahzTb2o1OVR1DPt7bWSN-HIgAp-6yuTR5z9_A2TDNPXEhdzaS9iQrODr7b_FtAIKXOJyM-94GC2kLk7wH8JX-o2Z__FmnLi5cRjnssVsUNwQ0pLOno39nbBtThphBwkT6yfeYopETi8XGsGMNOGw4A0fdM1v1CWFffsQJTC2U1m2PHmPOR-QyUeLDMTpjpDsC-NyFW-Kj5VgiSWiFDj9VoKpps0qJD-n3w7pQ' for storage proxy auth request /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EUXpMQ0pwWVhRaU9qRTNOVGc0TnpVNE5ETXNJbVY0Y0NJNk1UYzFPRGczTmpRME15d2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4MVpTODFaV1V3TmpSbU9EYzJOR0l3T1dFMk5EZ3lPV0kxT0Rjd05USXhPV0U0T0dVd1lqRXpNalF6WmpkbU5EQXpaRFkyWVdNd1l6WXpPVFkwTURReU5tRTFQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFxTmxObFdpVXlRbWMzYVROaVpXZG5ZVXRZWVROdlNtUm9UM0JpWnlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME5ETWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuZW1vWHpoaHdqa053M0l3TVJSZXJhcU5aVEJKLVN6OVpvM3RaWm1RdVljWlFzbWU5QmdhbWR3NVJYOWF4YlQ1V1VjTGdyWnpRandRcl85WmF6cjd5WGtsUkZfX2VqaFA4REIyNjVsTWFOZThLcEtHcndhaHpUYjJvMU9WUjFEUHQ3YldTTi1ISWdBcC02eXVUUjV6OV9BMlRETlBYRWhkemFTOWlRck9EcjdiX0Z0QUlLWE9KeU0tOTRHQzJrTGs3d0g4SlgtbzJaX19GbW5MaTVjUmpuc3NWc1VOd1EwcExPbm8zOW5iQnRUaHBoQndrVDZ5ZmVZb3BFVGk4WEdzR01OT0d3NEEwZmRNMXYxQ1dGZmZzUUpUQzJVMW0yUEhtUE9SLVF5VWVMRE1UcGpwRHNDLU55RlctS2o1VmdpU1dpRkRqOVZvS3BwczBxSkQtbjN3N3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=j6SeZ%2Bg7i3beggaKXa3oJdhOpbg%3D&Expires=1758876443 with parts ['ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EUXpMQ0pwWVhRaU9qRTNOVGc0TnpVNE5ETXNJbVY0Y0NJNk1UYzFPRGczTmpRME15d2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4MVpTODFaV1V3TmpSbU9EYzJOR0l3T1dFMk5EZ3lPV0kxT0Rjd05USXhPV0U0T0dVd1lqRXpNalF6WmpkbU5EQXpaRFkyWVdNd1l6WXpPVFkwTURReU5tRTFQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFxTmxObFdpVXlRbWMzYVROaVpXZG5ZVXRZWVROdlNtUm9UM0JpWnlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME5ETWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuZW1vWHpoaHdqa053M0l3TVJSZXJhcU5aVEJKLVN6OVpvM3RaWm1RdVljWlFzbWU5QmdhbWR3NVJYOWF4YlQ1V1VjTGdyWnpRandRcl85WmF6cjd5WGtsUkZfX2VqaFA4REIyNjVsTWFOZThLcEtHcndhaHpUYjJvMU9WUjFEUHQ3YldTTi1ISWdBcC02eXVUUjV6OV9BMlRETlBYRWhkemFTOWlRck9EcjdiX0Z0QUlLWE9KeU0tOTRHQzJrTGs3d0g4SlgtbzJaX19GbW5MaTVjUmpuc3NWc1VOd1EwcExPbm8zOW5iQnRUaHBoQndrVDZ5ZmVZb3BFVGk4WEdzR01OT0d3NEEwZmRNMXYxQ1dGZmZzUUpUQzJVMW0yUEhtUE9SLVF5VWVMRE1UcGpwRHNDLU55RlctS2o1VmdpU1dpRkRqOVZvS3BwczBxSkQtbjN3N3BR', 'https', 's3.openshift-storage.svc.cluster.local:443', 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=j6SeZ%2Bg7i3beggaKXa3oJdhOpbg%3D&Expires=1758876443'] gunicorn-web stdout | 2025-09-26 08:37:24,154 [247] [DEBUG] [app] Ending request: urn:request:13bcd572-fc0b-4a22-9609-004a65672a9f (/_storage_proxy_auth) {'endpoint': '_storage_proxy_auth', 'request_id': 'urn:request:13bcd572-fc0b-4a22-9609-004a65672a9f', 'remote_addr': '3.147.184.98', 'http_method': 'GET', 'original_url': 'https://web_app_server/_storage_proxy_auth', 'path': '/_storage_proxy_auth', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'Go-http-client/1.1'} gunicorn-web stdout | 2025-09-26 08:37:24,154 [247] [INFO] [gunicorn.access] 3.147.184.98 - - [26/Sep/2025:08:37:24 +0000] "GET /_storage_proxy_auth HTTP/1.0" 200 2 "-" "Go-http-client/1.1" gunicorn-registry stdout | 2025-09-26 08:37:24,311 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:24,311 [258] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:24,311 [258] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601', 'UploadId': '68d650c3d73ec60008f93564', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1ba147600>, 'ContentLength': 3615006} gunicorn-registry stdout | 2025-09-26 08:37:24,311 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,311 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,311 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,312 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,312 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:24,312 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,312 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,312 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:24,312 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:24,312 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:24,312 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:24,312 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:24,312 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,319 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,319 [258] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:24,319 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,319 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,319 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601', 'query_string': {'uploadId': '68d650c3d73ec60008f93564', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '3615006', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'qgZGQ9X7TL/b/FgOGpWsrw==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1ba147600>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601?uploadId=68d650c3d73ec60008f93564&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601', 'UploadId': '68d650c3d73ec60008f93564', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1ba147600>, 'ContentLength': 3615006}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:24,319 [258] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:24,319 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:24,319 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,319 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,319 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:24,319 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601 gunicorn-registry stdout | partNumber=1&uploadId=68d650c3d73ec60008f93564 gunicorn-registry stdout | content-length:3615006 gunicorn-registry stdout | content-md5:qgZGQ9X7TL/b/FgOGpWsrw== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083724Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:24,319 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083724Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | d8fe89b9c742b3747aa0fd93baba6fd0a9899798a08b41dd4b6c93f8e3ec1a1b gunicorn-registry stdout | 2025-09-26 08:37:24,320 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 55e80b407b7a29a3f443dcac1d907ba6e96915a73908c944729c4e89ce7aad91 gunicorn-registry stdout | 2025-09-26 08:37:24,320 [258] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,320 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:24,320 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:24,321 [258] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:37:24,322 [258] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:37:24,650 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601?uploadId=68d650c3d73ec60008f93564&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:24,650 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9jaa-83c5t5-17iy', 'x-amz-id-2': 'mg0l9jaa-83c5t5-17iy', 'ETag': '"aa064643d5fb4cbfdbfc580e1a95acaf"', 'Date': 'Fri, 26 Sep 2025 08:37:24 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:24,650 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:24,650 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,650 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:24,650 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:24,650 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9jaa-83c5t5-17iy', 'HostId': 'mg0l9jaa-83c5t5-17iy', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9jaa-83c5t5-17iy', 'x-amz-id-2': 'mg0l9jaa-83c5t5-17iy', 'etag': '"aa064643d5fb4cbfdbfc580e1a95acaf"', 'date': 'Fri, 26 Sep 2025 08:37:24 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"aa064643d5fb4cbfdbfc580e1a95acaf"'} gunicorn-registry stdout | 2025-09-26 08:37:24,651 [258] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601', 'UploadId': '68d650c3d73ec60008f93564', 'MultipartUpload': {'Parts': [{'ETag': '"aa064643d5fb4cbfdbfc580e1a95acaf"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:24,651 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,651 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,651 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,651 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:24,651 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,651 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,651 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:24,651 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:24,651 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:24,651 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:24,651 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:24,651 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,651 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,652 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,652 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601', 'query_string': {'uploadId': '68d650c3d73ec60008f93564'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"aa064643d5fb4cbfdbfc580e1a95acaf"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601?uploadId=68d650c3d73ec60008f93564', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601', 'UploadId': '68d650c3d73ec60008f93564', 'MultipartUpload': {'Parts': [{'ETag': '"aa064643d5fb4cbfdbfc580e1a95acaf"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:24,652 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:24,652 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:24,652 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,652 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,652 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:24,652 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601 gunicorn-registry stdout | uploadId=68d650c3d73ec60008f93564 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:407fc27cd30915c2a04e22cb2d00c91b231dc1ae1579677923fdea34d840f5f7 gunicorn-registry stdout | x-amz-date:20250926T083724Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 407fc27cd30915c2a04e22cb2d00c91b231dc1ae1579677923fdea34d840f5f7 gunicorn-registry stdout | 2025-09-26 08:37:24,652 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083724Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 406361d3a1395a1862b76b49743fb14b7d1c342753330e8ecc37740c91bf0b38 gunicorn-registry stdout | 2025-09-26 08:37:24,652 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 442a5fb668bf9d118082a7002cc3b542f641cdb0d3256f955347fe0290f2cee2 gunicorn-registry stdout | 2025-09-26 08:37:24,652 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,652 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:24,652 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:24 +0000] "GET /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EUXpMQ0pwWVhRaU9qRTNOVGc0TnpVNE5ETXNJbVY0Y0NJNk1UYzFPRGczTmpRME15d2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4MVpTODFaV1V3TmpSbU9EYzJOR0l3T1dFMk5EZ3lPV0kxT0Rjd05USXhPV0U0T0dVd1lqRXpNalF6WmpkbU5EQXpaRFkyWVdNd1l6WXpPVFkwTURReU5tRTFQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFxTmxObFdpVXlRbWMzYVROaVpXZG5ZVXRZWVROdlNtUm9UM0JpWnlVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME5ETWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuZW1vWHpoaHdqa053M0l3TVJSZXJhcU5aVEJKLVN6OVpvM3RaWm1RdVljWlFzbWU5QmdhbWR3NVJYOWF4YlQ1V1VjTGdyWnpRandRcl85WmF6cjd5WGtsUkZfX2VqaFA4REIyNjVsTWFOZThLcEtHcndhaHpUYjJvMU9WUjFEUHQ3YldTTi1ISWdBcC02eXVUUjV6OV9BMlRETlBYRWhkemFTOWlRck9EcjdiX0Z0QUlLWE9KeU0tOTRHQzJrTGs3d0g4SlgtbzJaX19GbW5MaTVjUmpuc3NWc1VOd1EwcExPbm8zOW5iQnRUaHBoQndrVDZ5ZmVZb3BFVGk4WEdzR01OT0d3NEEwZmRNMXYxQ1dGZmZzUUpUQzJVMW0yUEhtUE9SLVF5VWVMRE1UcGpwRHNDLU55RlctS2o1VmdpU1dpRkRqOVZvS3BwczBxSkQtbjN3N3BR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5e/5ee064f8764b09a64829b58705219a88e0b13243f7f403d66ac0c639640426a5?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=j6SeZ%2Bg7i3beggaKXa3oJdhOpbg%3D&Expires=1758876443 HTTP/1.1" 200 3198345 "-" "Go-http-client/1.1" (0.503 2409 0.500) gunicorn-registry stdout | 2025-09-26 08:37:24,669 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601?uploadId=68d650c3d73ec60008f93564 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:24,669 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9jji-dkxuhy-hhy', 'x-amz-id-2': 'mg0l9jji-dkxuhy-hhy', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:24 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:24,669 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601"e86323d04b1ab2e9c7b8aa5a018aceeb-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601?uploadId=68d650c3d73ec60008f93564' gunicorn-registry stdout | 2025-09-26 08:37:24,669 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,669 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:24,669 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:24,669 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:24,670 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9jji-dkxuhy-hhy', 'HostId': 'mg0l9jji-dkxuhy-hhy', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9jji-dkxuhy-hhy', 'x-amz-id-2': 'mg0l9jji-dkxuhy-hhy', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:24 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601?uploadId=68d650c3d73ec60008f93564', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601', 'ETag': '"e86323d04b1ab2e9c7b8aa5a018aceeb-1"'} gunicorn-registry stdout | 2025-09-26 08:37:24,670 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:24,670 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:24,671 [258] [DEBUG] [data.registry_model.blobuploader] Uploaded 3615006 bytes to blob 0bd55477-53c7-40d1-a161-4e400e649842 took 0.6838283538818359 seconds gunicorn-registry stdout | 2025-09-26 08:37:24,672 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['0bd55477-53c7-40d1-a161-4e400e649842', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:24,673 [258] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '0bd55477-53c7-40d1-a161-4e400e649842', 3615006, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENw3Ax/mDx8/+lABzrQge6X/t8AAAD//xXpzcIALHAA/ah2wP8M//wq4H5k3Bx/bPf+V47//Wm1pwP+5cjx73v+jx4AAAAAAAAAAEi5AQAAAACUxeJ/D5kN5eT0NKiTBrJ9guRudJD30hFTXxcrokxAkZRiLg==', 9, '{"chunks": [["uploads/5d7190b6-c21e-4b9e-ad3f-b41dd2593601", 0, 3615006]]}', 1, 7351296, datetime.datetime(2025, 9, 26, 8, 37, 23, 928232), None, None, 66]) gunicorn-registry stdout | 2025-09-26 08:37:24,675 [258] [DEBUG] [app] Ending request: urn:request:4c7e9754-8514-4fe0-9182-f7f2cd30e331 (/v2/testorg2/alpine/blobs/uploads/0bd55477-53c7-40d1-a161-4e400e649842) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:4c7e9754-8514-4fe0-9182-f7f2cd30e331', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/0bd55477-53c7-40d1-a161-4e400e649842', 'path': '/v2/testorg2/alpine/blobs/uploads/0bd55477-53c7-40d1-a161-4e400e649842', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:24,675 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:24,675 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:24,676 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:24 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/0bd55477-53c7-40d1-a161-4e400e649842 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:24 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/0bd55477-53c7-40d1-a161-4e400e649842 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.703 3616786 0.702) gunicorn-registry stdout | 2025-09-26 08:37:25,051 [251] [DEBUG] [app] Starting request: urn:request:8e32f12e-2b3d-496b-b694-45d0789ec05d (/v2/testorg2/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:25,052 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:25,052 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:25,052 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:25,053 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:25,053 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:25,053 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:25,053 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:25,053 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:25,054 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,055 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,056 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,058 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,059 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,059 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,060 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:25,061 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,062 [251] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [3, 'aeaf6ea8-1da1-4726-adb2-82021123f698', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 37, 25, 61979)]) gunicorn-registry stdout | 2025-09-26 08:37:25,064 [251] [DEBUG] [app] Ending request: urn:request:8e32f12e-2b3d-496b-b694-45d0789ec05d (/v2/testorg2/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:8e32f12e-2b3d-496b-b694-45d0789ec05d', 'remote_addr': '10.131.2.20', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/', 'path': '/v2/testorg2/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:25,064 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:25,064 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:25 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.013 1697 0.014) gunicorn-registry stdout | 2025-09-26 08:37:25,064 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:25 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" gunicorn-registry stdout | 2025-09-26 08:37:25,106 [251] [DEBUG] [app] Starting request: urn:request:c4a184ee-70f5-482a-a6fc-d95f6fe46325 (/v2/testorg2/alpine/blobs/uploads/aeaf6ea8-1da1-4726-adb2-82021123f698) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:25,106 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'aeaf6ea8-1da1-4726-adb2-82021123f698', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:25,106 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:25,106 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:25,108 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:25,108 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:25,108 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:25,108 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:25,108 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:25,108 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,110 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,110 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,111 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,112 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,113 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,114 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,115 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:25,116 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['aeaf6ea8-1da1-4726-adb2-82021123f698', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,117 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:25,117 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:25,117 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:25,118 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:25,118 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:25,118 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,119 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,119 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,119 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,119 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:25,119 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,119 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,119 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:25,119 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:25,119 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:25,119 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:25,119 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:25,119 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,119 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,119 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,119 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:25,119 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:25,119 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:25,119 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,120 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,120 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:25,120 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083725Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:25,120 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083725Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 416562f47e07dc820264ac352925556004068255cbe3e499e123e845874fe40e gunicorn-registry stdout | 2025-09-26 08:37:25,120 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 54c72f259e7d6c1bb6d58c404a4ddf03e9b267eafe6ce35194df1b09b001d128 gunicorn-registry stdout | 2025-09-26 08:37:25,120 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,120 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:25,120 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:25,131 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:25,131 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9jwh-4s5bi6-d4u', 'x-amz-id-2': 'mg0l9jwh-4s5bi6-d4u', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:25 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:25,131 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad78268d650c5d73ec60008f9356d' gunicorn-registry stdout | 2025-09-26 08:37:25,131 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,131 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:25,131 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:25,131 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9jwh-4s5bi6-d4u', 'HostId': 'mg0l9jwh-4s5bi6-d4u', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9jwh-4s5bi6-d4u', 'x-amz-id-2': 'mg0l9jwh-4s5bi6-d4u', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:25 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782', 'UploadId': '68d650c5d73ec60008f9356d'} gunicorn-registry stdout | 2025-09-26 08:37:25,131 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:25,132 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:25,132 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:25,132 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782', 'UploadId': '68d650c5d73ec60008f9356d', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89fe2f0>, 'ContentLength': 576} gunicorn-registry stdout | 2025-09-26 08:37:25,132 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,132 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,133 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,133 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,133 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:25,133 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,133 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,133 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:25,133 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:25,133 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:25,133 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:25,133 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:25,133 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,133 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,133 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:25,133 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,133 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,133 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782', 'query_string': {'uploadId': '68d650c5d73ec60008f9356d', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '576', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'K9bGImxUGGhmbkpXrmcRlA==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b89fe2f0>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782?uploadId=68d650c5d73ec60008f9356d&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782', 'UploadId': '68d650c5d73ec60008f9356d', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89fe2f0>, 'ContentLength': 576}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:25,134 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:25,134 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:25,134 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,134 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,134 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:25,134 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782 gunicorn-registry stdout | partNumber=1&uploadId=68d650c5d73ec60008f9356d gunicorn-registry stdout | content-length:576 gunicorn-registry stdout | content-md5:K9bGImxUGGhmbkpXrmcRlA== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083725Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:25,134 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083725Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 18fbc1114cefc90cd5875b5a7f3c451a6cf6360cc5a4e66efea7258a449d4ede gunicorn-registry stdout | 2025-09-26 08:37:25,134 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | cb39a31452872fbff4fe5fcfebcf658c7d8d24f0be9ebf28ed8081ae333d4899 gunicorn-registry stdout | 2025-09-26 08:37:25,134 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,135 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:25,135 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:25,135 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. globalpromstats stdout | 2025-09-26 08:37:25,136 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} gunicorn-registry stdout | 2025-09-26 08:37:25,137 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:37:25,217 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782?uploadId=68d650c5d73ec60008f9356d&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:25,217 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9jww-50uwcl-lud', 'x-amz-id-2': 'mg0l9jww-50uwcl-lud', 'ETag': '"2bd6c6226c541868666e4a57ae671194"', 'Date': 'Fri, 26 Sep 2025 08:37:25 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:25,217 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:25,217 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,217 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:25,217 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:25,217 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9jww-50uwcl-lud', 'HostId': 'mg0l9jww-50uwcl-lud', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9jww-50uwcl-lud', 'x-amz-id-2': 'mg0l9jww-50uwcl-lud', 'etag': '"2bd6c6226c541868666e4a57ae671194"', 'date': 'Fri, 26 Sep 2025 08:37:25 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"2bd6c6226c541868666e4a57ae671194"'} gunicorn-registry stdout | 2025-09-26 08:37:25,218 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782', 'UploadId': '68d650c5d73ec60008f9356d', 'MultipartUpload': {'Parts': [{'ETag': '"2bd6c6226c541868666e4a57ae671194"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:25,218 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,218 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,218 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,218 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:25,218 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,218 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,218 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:25,218 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:25,218 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:25,218 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:25,218 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:25,218 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,218 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,218 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,219 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782', 'query_string': {'uploadId': '68d650c5d73ec60008f9356d'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"2bd6c6226c541868666e4a57ae671194"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782?uploadId=68d650c5d73ec60008f9356d', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782', 'UploadId': '68d650c5d73ec60008f9356d', 'MultipartUpload': {'Parts': [{'ETag': '"2bd6c6226c541868666e4a57ae671194"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:25,219 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:25,219 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:25,219 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,219 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,219 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:25,219 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782 gunicorn-registry stdout | uploadId=68d650c5d73ec60008f9356d gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:86ef7a7b2c9479bff247d8e1d40e8af6be0b6149b5b8e653a1c4db273faf6dc9 gunicorn-registry stdout | x-amz-date:20250926T083725Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 86ef7a7b2c9479bff247d8e1d40e8af6be0b6149b5b8e653a1c4db273faf6dc9 gunicorn-registry stdout | 2025-09-26 08:37:25,219 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083725Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 1cec21e5ba9f09ef35ce80bb3b93b1a65747e5d152ad0e405d39c4b1e52e545a gunicorn-registry stdout | 2025-09-26 08:37:25,219 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 624a66a6870110817aa51015961d4622fca5f83c918c43f836b15a28e2479c53 gunicorn-registry stdout | 2025-09-26 08:37:25,219 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,220 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:25,220 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:25,237 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782?uploadId=68d650c5d73ec60008f9356d HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:25,238 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9jz9-6f8zme-eyo', 'x-amz-id-2': 'mg0l9jz9-6f8zme-eyo', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:25 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:25,238 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782"109d44b9dc2e005b309d2c8d646756e8-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782?uploadId=68d650c5d73ec60008f9356d' gunicorn-registry stdout | 2025-09-26 08:37:25,238 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,238 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,238 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:25,238 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:25,238 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9jz9-6f8zme-eyo', 'HostId': 'mg0l9jz9-6f8zme-eyo', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9jz9-6f8zme-eyo', 'x-amz-id-2': 'mg0l9jz9-6f8zme-eyo', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:25 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782?uploadId=68d650c5d73ec60008f9356d', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/5f9975a1-e173-40ac-b672-ae5447cad782', 'ETag': '"109d44b9dc2e005b309d2c8d646756e8-1"'} gunicorn-registry stdout | 2025-09-26 08:37:25,238 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:25,239 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:25,239 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 576 bytes to blob aeaf6ea8-1da1-4726-adb2-82021123f698 took 0.12212443351745605 seconds gunicorn-registry stdout | 2025-09-26 08:37:25,240 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['aeaf6ea8-1da1-4726-adb2-82021123f698', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,241 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, 'aeaf6ea8-1da1-4726-adb2-82021123f698', 576, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwY2NmMDk3YjQ3ZDE1YzQyMmJkZmU5MDI1ODBlZjg0MjBmYTAxYTEyOGU3MDRiZDI2ZjlmNmQxZDBlNWNkIl19fQAAAAAAAAAAABIAAAAAAADsIYXKxO6OiAO4Kol0Q6shxalXK46gzm4IMTX8fnIqUJRiLg==', 9, '{"chunks": [["uploads/5f9975a1-e173-40ac-b672-ae5447cad782", 0, 576]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 37, 25, 61979), None, None, 67]) gunicorn-registry stdout | 2025-09-26 08:37:25,243 [251] [DEBUG] [app] Ending request: urn:request:c4a184ee-70f5-482a-a6fc-d95f6fe46325 (/v2/testorg2/alpine/blobs/uploads/aeaf6ea8-1da1-4726-adb2-82021123f698) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:c4a184ee-70f5-482a-a6fc-d95f6fe46325', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/aeaf6ea8-1da1-4726-adb2-82021123f698', 'path': '/v2/testorg2/alpine/blobs/uploads/aeaf6ea8-1da1-4726-adb2-82021123f698', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:25,243 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:25,243 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:25,244 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:25 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/aeaf6ea8-1da1-4726-adb2-82021123f698 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:25 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/aeaf6ea8-1da1-4726-adb2-82021123f698 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.140 2352 0.139) gunicorn-registry stdout | 2025-09-26 08:37:25,478 [257] [DEBUG] [app] Starting request: urn:request:95683e60-60d1-4e1a-a042-ffc0bc57156e (/v2/testorg2/alpine/manifests/sha256:0a88b42ba69d6b900848f9cb9151587bb82827d0aecfa222e51981fad97b5b9a) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:25,479 [257] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'manifest_ref': 'sha256:0a88b42ba69d6b900848f9cb9151587bb82827d0aecfa222e51981fad97b5b9a', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:25,479 [257] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:25,479 [257] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:25,480 [257] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:25,481 [257] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:25,481 [257] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:25,481 [257] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:25,481 [257] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:25,482 [257] [DEBUG] [data.cache.cache_key] Loading repository lookup from cache_key: repository_lookup_testorg2_alpine gunicorn-registry stdout | 2025-09-26 08:37:25,483 [257] [DEBUG] [data.cache.impl] Checking cache for key repository_lookup_testorg2_alpine gunicorn-registry stdout | 2025-09-26 08:37:25,483 [257] [DEBUG] [data.cache.impl] Found result in cache for key repository_lookup_testorg2_alpine: {'id': 3, 'visibility': {'id': 2, 'name': 'private'}, 'kind': {'id': 1, 'name': 'image'}, 'state': 0, 'namespace_user': {'stripe_id': None}} gunicorn-registry stdout | 2025-09-26 08:37:25,484 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:0a88b42ba69d6b900848f9cb9151587bb82827d0aecfa222e51981fad97b5b9a', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,486 [257] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL (SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "uploadedblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1")', [3, 'sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888', 1, 3, 'sha256:f30a2997d9e5b4550ba0df7a56dd645b69bb05be267d3c50316326ed25f10b79', 1]) gunicorn-registry stdout | 2025-09-26 08:37:25,487 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."digest" = %s) AND ("t1"."repository_id" = %s)) LIMIT %s OFFSET %s', ['sha256:0a88b42ba69d6b900848f9cb9151587bb82827d0aecfa222e51981fad97b5b9a', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,488 [257] [DEBUG] [peewee] ('INSERT INTO "manifest" ("repository_id", "digest", "media_type_id", "manifest_bytes", "config_media_type", "layers_compressed_size", "subject", "subject_backfilled", "artifact_type", "artifact_type_backfilled") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifest"."id"', [3, 'sha256:0a88b42ba69d6b900848f9cb9151587bb82827d0aecfa222e51981fad97b5b9a', 18, '{\n "schemaVersion": 2,\n "mediaType": "application/vnd.oci.image.manifest.v1+json",\n "config": {\n "mediaType": "application/vnd.oci.image.config.v1+json",\n "digest": "sha256:f30a2997d9e5b4550ba0df7a56dd645b69bb05be267d3c50316326ed25f10b79",\n "size": 576\n },\n "layers": [\n {\n "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",\n "digest": "sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888",\n "size": 3615006\n }\n ],\n "annotations": {\n "com.docker.official-images.bashbrew.arch": "i386",\n "org.opencontainers.image.base.name": "scratch",\n "org.opencontainers.image.created": "2025-07-15T11:01:16Z",\n "org.opencontainers.image.revision": "01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e",\n "org.opencontainers.image.source": "https://github.com/alpinelinux/docker-alpine.git#01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e:x86",\n "org.opencontainers.image.url": "https://hub.docker.com/_/alpine",\n "org.opencontainers.image.version": "3.22.1"\n }\n}', 'application/vnd.oci.image.config.v1+json', 3615006, None, True, None, True]) gunicorn-registry stdout | 2025-09-26 08:37:25,489 [257] [DEBUG] [peewee] ('INSERT INTO "manifestblob" ("repository_id", "manifest_id", "blob_id") VALUES (%s, %s, %s), (%s, %s, %s) RETURNING "manifestblob"."id"', [3, 27, 67, 3, 27, 68]) gunicorn-registry stdout | 2025-09-26 08:37:25,490 [257] [DEBUG] [peewee] ('SELECT "t1"."namespace_user_id" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,491 [257] [DEBUG] [peewee] ('SELECT 1 FROM "user" AS "t1" WHERE ((("t1"."id" = %s) AND "t1"."enabled") AND NOT "t1"."robot") LIMIT %s', [4, 1]) gunicorn-registry stdout | 2025-09-26 08:37:25,492 [257] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [4, 67, 27, 1]) gunicorn-registry stdout | 2025-09-26 08:37:25,492 [257] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [4, 68, 27, 1]) gunicorn-registry stdout | 2025-09-26 08:37:25,493 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,493 [257] [INFO] [data.model.quota] updating namespace size for manifest 27 in namespace 4, QuotaOperation.ADD 3615582 gunicorn-registry stdout | 2025-09-26 08:37:25,493 [257] [DEBUG] [peewee] ('UPDATE "quotanamespacesize" SET "size_bytes" = ("quotanamespacesize"."size_bytes" + %s) WHERE ("quotanamespacesize"."namespace_user_id" = %s)', [3615582, 4]) gunicorn-registry stdout | 2025-09-26 08:37:25,494 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotarepositorysize" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,494 [257] [INFO] [data.model.quota] updating repository size for manifest 27 in repository 3, QuotaOperation.ADD 3615582 gunicorn-registry stdout | 2025-09-26 08:37:25,494 [257] [DEBUG] [peewee] ('UPDATE "quotarepositorysize" SET "size_bytes" = ("quotarepositorysize"."size_bytes" + %s) WHERE ("quotarepositorysize"."repository_id" = %s)', [3615582, 3]) gunicorn-registry stdout | 2025-09-26 08:37:25,495 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [27, None, 1758879445495, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,496 [257] [DEBUG] [peewee] ('INSERT INTO "tag" ("name", "repository_id", "manifest_id", "lifetime_start_ms", "lifetime_end_ms", "immutable", "hidden", "reversion", "tag_kind_id") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "tag"."id"', ['$temp-f6e2eb26-f0b8-4c92-9dc2-616058e1fef2', 3, 27, 1758875845495, 1758879445495, False, True, False, 1]) gunicorn-registry stdout | 2025-09-26 08:37:25,498 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:f30a2997d9e5b4550ba0df7a56dd645b69bb05be267d3c50316326ed25f10b79', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,499 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['2ac9bf98-4232-4b44-b0eb-d22934938341']) gunicorn-registry stdout | 2025-09-26 08:37:25,500 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:25,501 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:25,501 [257] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/f3/f30a2997d9e5b4550ba0df7a56dd645b69bb05be267d3c50316326ed25f10b79'} gunicorn-registry stdout | 2025-09-26 08:37:25,502 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,502 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,502 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,502 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:25,502 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,502 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,502 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:25,502 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:25,502 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:25,503 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:25,503 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:25,503 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,503 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,503 [257] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,503 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/f3/f30a2997d9e5b4550ba0df7a56dd645b69bb05be267d3c50316326ed25f10b79', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/f3/f30a2997d9e5b4550ba0df7a56dd645b69bb05be267d3c50316326ed25f10b79', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/f3/f30a2997d9e5b4550ba0df7a56dd645b69bb05be267d3c50316326ed25f10b79', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/f3/f30a2997d9e5b4550ba0df7a56dd645b69bb05be267d3c50316326ed25f10b79'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:25,503 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:25,503 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:25,503 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,503 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,503 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:25,503 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/f3/f30a2997d9e5b4550ba0df7a56dd645b69bb05be267d3c50316326ed25f10b79 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083725Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:25,503 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083725Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | f36dbba5897ac43185d4a1b32f8ed4ae6140b6116bcb751adea9c841deb04c4e gunicorn-registry stdout | 2025-09-26 08:37:25,504 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | b4d6bf8f3822429bcc434cc43f33b8423c5eed9d375ea38d48e0e95e4cb82c14 gunicorn-registry stdout | 2025-09-26 08:37:25,504 [257] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,504 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:25,504 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:25,504 [257] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | 2025-09-26 08:37:25,591 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/f3/f30a2997d9e5b4550ba0df7a56dd645b69bb05be267d3c50316326ed25f10b79 HTTP/1.1" 200 576 gunicorn-registry stdout | 2025-09-26 08:37:25,592 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9k7t-bim1zj-11g6', 'x-amz-id-2': 'mg0l9k7t-bim1zj-11g6', 'ETag': '"109d44b9dc2e005b309d2c8d646756e8-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:25 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '576', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:25 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:25,592 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:25,592 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:25,592 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:25,592 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:25,592 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9k7t-bim1zj-11g6', 'HostId': 'mg0l9k7t-bim1zj-11g6', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9k7t-bim1zj-11g6', 'x-amz-id-2': 'mg0l9k7t-bim1zj-11g6', 'etag': '"109d44b9dc2e005b309d2c8d646756e8-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:25 GMT', 'content-type': 'application/octet-stream', 'content-length': '576', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:25 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 25, tzinfo=tzutc()), 'ContentLength': 576, 'ETag': '"109d44b9dc2e005b309d2c8d646756e8-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:25,594 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "mediatype" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:37:25,595 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."mutable" FROM "labelsourcetype" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:37:25,597 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [27, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,598 [257] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['e7afe6c3-7767-4e3c-adbb-06a933bc50fb', 'com.docker.official-images.bashbrew.arch', 'i386', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:25,600 [257] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 27, 85]) gunicorn-registry stdout | 2025-09-26 08:37:25,602 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [27, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,603 [257] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['5c95a5f9-99bd-4d39-9a0c-1bb55dc50c72', 'org.opencontainers.image.base.name', 'scratch', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:25,604 [257] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 27, 86]) gunicorn-registry stdout | 2025-09-26 08:37:25,606 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [27, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,607 [257] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['1cf8541c-ff3a-4d51-b136-b82c3ba80811', 'org.opencontainers.image.created', '2025-07-15T11:01:16Z', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:25,607 [257] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 27, 87]) gunicorn-registry stdout | 2025-09-26 08:37:25,609 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [27, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,610 [257] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['ccad4a1a-2b38-4728-8d4f-badec83ac0ae', 'org.opencontainers.image.revision', '01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:25,611 [257] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 27, 88]) gunicorn-registry stdout | 2025-09-26 08:37:25,613 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [27, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,614 [257] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['6fcbc2dd-7d2f-4e44-b0ee-83108de6c06f', 'org.opencontainers.image.source', 'https://github.com/alpinelinux/docker-alpine.git#01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e:x86', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:25,614 [257] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 27, 89]) gunicorn-registry stdout | 2025-09-26 08:37:25,617 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [27, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,619 [257] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['1589d4eb-6895-4010-bf25-077f742b2a45', 'org.opencontainers.image.url', 'https://hub.docker.com/_/alpine', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:25,619 [257] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 27, 90]) gunicorn-registry stdout | 2025-09-26 08:37:25,621 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [27, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,622 [257] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['96e086e0-6fb2-4741-a554-4f7db57cb76a', 'org.opencontainers.image.version', '3.22.1', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:25,623 [257] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 27, 91]) gunicorn-registry stdout | 2025-09-26 08:37:25,625 [257] [DEBUG] [app] Ending request: urn:request:95683e60-60d1-4e1a-a042-ffc0bc57156e (/v2/testorg2/alpine/manifests/sha256:0a88b42ba69d6b900848f9cb9151587bb82827d0aecfa222e51981fad97b5b9a) {'endpoint': 'v2.write_manifest_by_digest', 'request_id': 'urn:request:95683e60-60d1-4e1a-a042-ffc0bc57156e', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/manifests/sha256:0a88b42ba69d6b900848f9cb9151587bb82827d0aecfa222e51981fad97b5b9a', 'path': '/v2/testorg2/alpine/manifests/sha256:0a88b42ba69d6b900848f9cb9151587bb82827d0aecfa222e51981fad97b5b9a', 'parameters': {}, 'json_body': {'schemaVersion': 2, 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'config': {'mediaType': 'application/vnd.oci.image.config.v1+json', 'digest': 'sha256:f30a2997d9e5b4550ba0df7a56dd645b69bb05be267d3c50316326ed25f10b79', 'size': 576}, 'layers': [{'mediaType': 'application/vnd.oci.image.layer.v1.tar+gzip', 'digest': 'sha256:a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888', 'size': 3615006}], 'annotations': {'com.docker.official-images.bashbrew.arch': 'i386', 'org.opencontainers.image.base.name': 'scratch', 'org.opencontainers.image.created': '2025-07-15T11:01:16Z', 'org.opencontainers.image.revision': '01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e', 'org.opencontainers.image.source': 'https://github.com/alpinelinux/docker-alpine.git#01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e:x86', 'org.opencontainers.image.url': 'https://hub.docker.com/_/alpine', 'org.opencontainers.image.version': '3.22.1'}}, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:25,625 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:25,625 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:25,625 [257] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:25 +0000] "PUT /v2/testorg2/alpine/manifests/sha256:0a88b42ba69d6b900848f9cb9151587bb82827d0aecfa222e51981fad97b5b9a HTTP/1.1" 201 2 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:25 +0000] "PUT /v2/testorg2/alpine/manifests/sha256:0a88b42ba69d6b900848f9cb9151587bb82827d0aecfa222e51981fad97b5b9a HTTP/1.1" 201 2 "-" "skopeo/1.14.5" (0.148 2842 0.148) gunicorn-registry stdout | 2025-09-26 08:37:25,797 [257] [DEBUG] [app] Starting request: urn:request:c4464a6c-d40b-4fdf-930c-05fa04293b3f (/v2/testorg2/alpine/blobs/sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:25,797 [257] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:25,797 [257] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:25,797 [257] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:25,798 [257] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:25,798 [257] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:25,798 [257] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:25,798 [257] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:25,798 [257] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:25,799 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,799 [254] [DEBUG] [app] Starting request: urn:request:365fa65c-b222-414d-9c35-1e4ec4ee4916 (/v2/testorg2/alpine/blobs/sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:25,800 [254] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:25,800 [254] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:25,800 [254] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:25,800 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,801 [257] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:25,801 [257] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7_2 gunicorn-registry stdout | 2025-09-26 08:37:25,801 [257] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:25,802 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,803 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,804 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,804 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,805 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,805 [254] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."kid", "t1"."service", "t1"."jwk", "t1"."metadata", "t1"."created_date", "t1"."expiration_date", "t1"."rotation_duration", "t1"."approval_id" FROM "servicekey" AS "t1" LEFT OUTER JOIN "servicekeyapproval" AS "t2" ON ("t1"."approval_id" = "t2"."id") WHERE ((((NOT ("t1"."approval_id" IS %s) AND (("t1"."expiration_date" > %s) OR ("t1"."expiration_date" IS %s))) AND ("t1"."service" = %s)) AND (NOT (("t1"."service" = %s) AND ("t1"."expiration_date" <= %s)) OR NOT ((("t1"."service" = %s) AND ("t1"."approval_id" IS %s)) AND ("t1"."created_date" <= %s)))) AND (NOT ("t1"."expiration_date" <= %s) OR ("t1"."expiration_date" IS %s)))', [None, datetime.datetime(2025, 9, 26, 8, 37, 25, 800715), None, 'quay', 'quay', datetime.datetime(2025, 9, 26, 8, 37, 25, 800754), 'quay', None, datetime.datetime(2025, 9, 25, 8, 37, 25, 800785), datetime.datetime(2025, 9, 19, 8, 37, 25, 800803), None]) gunicorn-registry stdout | 2025-09-26 08:37:25,806 [257] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7_2: None gunicorn-registry stdout | 2025-09-26 08:37:25,806 [257] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7_2: None gunicorn-registry stdout | 2025-09-26 08:37:25,807 [257] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:25,807 [257] [DEBUG] [app] Ending request: urn:request:c4464a6c-d40b-4fdf-930c-05fa04293b3f (/v2/testorg2/alpine/blobs/sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:c4464a6c-d40b-4fdf-930c-05fa04293b3f', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7', 'path': '/v2/testorg2/alpine/blobs/sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:25,807 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:25,807 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:25,808 [257] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:25 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:25 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.011 1718 0.011) gunicorn-registry stdout | 2025-09-26 08:37:25,810 [254] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:25,810 [254] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:25,810 [254] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:25,810 [254] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:25,810 [254] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:25,811 [254] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,812 [254] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,813 [254] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:25,813 [254] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2_2 gunicorn-registry stdout | 2025-09-26 08:37:25,814 [254] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:25,815 [254] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,816 [254] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,816 [254] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,818 [254] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,819 [254] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,821 [254] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2_2: None gunicorn-registry stdout | 2025-09-26 08:37:25,821 [254] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2_2: None gunicorn-registry stdout | 2025-09-26 08:37:25,821 [254] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:25,822 [254] [DEBUG] [app] Ending request: urn:request:365fa65c-b222-414d-9c35-1e4ec4ee4916 (/v2/testorg2/alpine/blobs/sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:365fa65c-b222-414d-9c35-1e4ec4ee4916', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2', 'path': '/v2/testorg2/alpine/blobs/sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:25,822 [254] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:25,822 [254] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:25 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.026 1718 0.026) gunicorn-registry stdout | 2025-09-26 08:37:25,822 [254] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:25 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" proxycacheblobworker stdout | 2025-09-26 08:37:25,858 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} gunicorn-registry stdout | 2025-09-26 08:37:25,946 [257] [DEBUG] [app] Starting request: urn:request:95af9e0e-3b8b-4d3a-8baf-97ee7633ae07 (/v2/testorg2/alpine/blobs/sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:25,946 [257] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:25,946 [257] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:25,946 [257] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:25,947 [257] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:25,947 [257] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:25,947 [257] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:25,947 [257] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:25,947 [257] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:25,948 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,949 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,950 [257] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:25,950 [257] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7_2 gunicorn-registry stdout | 2025-09-26 08:37:25,950 [257] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:25,951 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,952 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,954 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,955 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,956 [257] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:25,957 [257] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7_2: None gunicorn-registry stdout | 2025-09-26 08:37:25,957 [257] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7_2: None gunicorn-registry stdout | 2025-09-26 08:37:25,957 [257] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:25,957 [257] [DEBUG] [app] Ending request: urn:request:95af9e0e-3b8b-4d3a-8baf-97ee7633ae07 (/v2/testorg2/alpine/blobs/sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:95af9e0e-3b8b-4d3a-8baf-97ee7633ae07', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7', 'path': '/v2/testorg2/alpine/blobs/sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:25,957 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:25,957 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:25,958 [257] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:25 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:25 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.013 1718 0.012) gunicorn-registry stdout | 2025-09-26 08:37:26,079 [257] [DEBUG] [app] Starting request: urn:request:fc878bc6-a848-4b8d-92f1-f1748a9ebac8 (/v2/testorg2/alpine/blobs/uploads/5a25e600-8e46-40e4-8333-f10ea4bd2452) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:26,079 [257] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '5a25e600-8e46-40e4-8333-f10ea4bd2452', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:26,079 [257] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:26,079 [257] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:26,080 [257] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:26,080 [257] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:26,080 [257] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:26,080 [257] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:26,080 [257] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:26,081 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,082 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,083 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,084 [257] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,085 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,085 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,086 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,087 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:26,088 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['5a25e600-8e46-40e4-8333-f10ea4bd2452', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,089 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:26,089 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:26,089 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:26,090 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:26,090 [257] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:26,090 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,090 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,090 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,090 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,090 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,091 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,091 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,091 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,091 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:26,091 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:26,091 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:26,091 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:26,091 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,091 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,091 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,091 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:26,091 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,091 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,091 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,091 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,092 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:26,092 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083726Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:26,092 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083726Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 3b93da6294fb2e04e6ba7e632d39c0da8cbf3559d845b0a3bacff77f045583ec gunicorn-registry stdout | 2025-09-26 08:37:26,092 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 2c43ac2f28dbd7a9a0d6c54da9e183e8913b20980ee41726fd547841a1aa0632 gunicorn-registry stdout | 2025-09-26 08:37:26,092 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,092 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:26,092 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:26,099 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:26,100 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9knh-4bfeim-14u', 'x-amz-id-2': 'mg0l9knh-4bfeim-14u', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:26,100 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b754763804668d650c6d73ec60008f93576' gunicorn-registry stdout | 2025-09-26 08:37:26,100 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,100 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:26,100 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,100 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9knh-4bfeim-14u', 'HostId': 'mg0l9knh-4bfeim-14u', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9knh-4bfeim-14u', 'x-amz-id-2': 'mg0l9knh-4bfeim-14u', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046', 'UploadId': '68d650c6d73ec60008f93576'} gunicorn-registry stdout | 2025-09-26 08:37:26,100 [257] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:26,101 [257] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:26,101 [257] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:26,101 [257] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046', 'UploadId': '68d650c6d73ec60008f93576', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1ba147380>, 'ContentLength': 5643} gunicorn-registry stdout | 2025-09-26 08:37:26,101 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,101 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,101 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,101 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,101 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,101 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,101 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,102 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,102 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:26,102 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:26,102 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:26,102 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:26,102 [257] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,103 [257] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,103 [257] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:26,103 [257] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,103 [257] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,103 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046', 'query_string': {'uploadId': '68d650c6d73ec60008f93576', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '5643', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': '8WsHPFzBF9K9KUih7q87hQ==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1ba147380>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046?uploadId=68d650c6d73ec60008f93576&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046', 'UploadId': '68d650c6d73ec60008f93576', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1ba147380>, 'ContentLength': 5643}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:26,103 [257] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,103 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,103 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,103 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,103 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:26,103 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046 gunicorn-registry stdout | partNumber=1&uploadId=68d650c6d73ec60008f93576 gunicorn-registry stdout | content-length:5643 gunicorn-registry stdout | content-md5:8WsHPFzBF9K9KUih7q87hQ== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083726Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:26,103 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083726Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 3e2b984986058d8b9651e0f4d43c0dfb6c054b614358b8303f77956105188bee gunicorn-registry stdout | 2025-09-26 08:37:26,103 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | c4d3734b4856bccabb5e811d64f73ecaccfbd8a19ca6330eb65172333c8428e3 gunicorn-registry stdout | 2025-09-26 08:37:26,103 [257] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,104 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:26,104 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:26,104 [257] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:37:26,106 [257] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:37:26,186 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046?uploadId=68d650c6d73ec60008f93576&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:26,186 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9knt-4ia0ct-eki', 'x-amz-id-2': 'mg0l9knt-4ia0ct-eki', 'ETag': '"f16b073c5cc117d2bd2948a1eeaf3b85"', 'Date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:26,186 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:26,187 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,187 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:26,187 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,187 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9knt-4ia0ct-eki', 'HostId': 'mg0l9knt-4ia0ct-eki', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9knt-4ia0ct-eki', 'x-amz-id-2': 'mg0l9knt-4ia0ct-eki', 'etag': '"f16b073c5cc117d2bd2948a1eeaf3b85"', 'date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"f16b073c5cc117d2bd2948a1eeaf3b85"'} gunicorn-registry stdout | 2025-09-26 08:37:26,187 [257] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046', 'UploadId': '68d650c6d73ec60008f93576', 'MultipartUpload': {'Parts': [{'ETag': '"f16b073c5cc117d2bd2948a1eeaf3b85"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:26,187 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,187 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,187 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,187 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,187 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,187 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,187 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,187 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:26,187 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:26,188 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:26,188 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:26,188 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,188 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,188 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,188 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046', 'query_string': {'uploadId': '68d650c6d73ec60008f93576'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"f16b073c5cc117d2bd2948a1eeaf3b85"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046?uploadId=68d650c6d73ec60008f93576', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046', 'UploadId': '68d650c6d73ec60008f93576', 'MultipartUpload': {'Parts': [{'ETag': '"f16b073c5cc117d2bd2948a1eeaf3b85"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:26,188 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,188 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,188 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,188 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,188 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:26,188 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046 gunicorn-registry stdout | uploadId=68d650c6d73ec60008f93576 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:bc786b571f5de39001eaf0f528b4f5de29f1e9acf24e0d963227839687ca900e gunicorn-registry stdout | x-amz-date:20250926T083726Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | bc786b571f5de39001eaf0f528b4f5de29f1e9acf24e0d963227839687ca900e gunicorn-registry stdout | 2025-09-26 08:37:26,188 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083726Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | cf9cb072cb9680b0ce9d23aefb44e6e6b998d683ab3d73bb102541c17114e298 gunicorn-registry stdout | 2025-09-26 08:37:26,189 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 2c9ab9f7e2fada5805b67ce61588d812d0abede8d1f17680f42b2bfcbcd0889c gunicorn-registry stdout | 2025-09-26 08:37:26,189 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,189 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:26,189 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:26,202 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046?uploadId=68d650c6d73ec60008f93576 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:26,203 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9kq6-5wswia-a1p', 'x-amz-id-2': 'mg0l9kq6-5wswia-a1p', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:26,203 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046"162b448acf2576190111be58d2fefa8d-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046?uploadId=68d650c6d73ec60008f93576' gunicorn-registry stdout | 2025-09-26 08:37:26,203 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,203 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,203 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:26,203 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,203 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9kq6-5wswia-a1p', 'HostId': 'mg0l9kq6-5wswia-a1p', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9kq6-5wswia-a1p', 'x-amz-id-2': 'mg0l9kq6-5wswia-a1p', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046?uploadId=68d650c6d73ec60008f93576', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046', 'ETag': '"162b448acf2576190111be58d2fefa8d-1"'} gunicorn-registry stdout | 2025-09-26 08:37:26,203 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:26,204 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:26,204 [257] [DEBUG] [data.registry_model.blobuploader] Uploaded 5643 bytes to blob 5a25e600-8e46-40e4-8333-f10ea4bd2452 took 0.1151587963104248 seconds gunicorn-registry stdout | 2025-09-26 08:37:26,205 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['5a25e600-8e46-40e4-8333-f10ea4bd2452', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,206 [257] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '5a25e600-8e46-40e4-8333-f10ea4bd2452', 5643, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwaWMiOnRydWV9fX01MDA2fV1dfX0sImh0dHBzOi8vbW9ieXByb2plY3Qub3JnL2J1aWxka2l0QHYxI2hlcm1ldAsAAAAAAAAAALAAAAAAAAC4RWA9239b9IJ3F1VYay8dn9weG5TylZd9JD5cmedz55RiLg==', 9, '{"chunks": [["uploads/75c5cb7c-048e-4788-9b66-0b7547638046", 0, 5643]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 37, 26, 33471), None, None, 69]) gunicorn-registry stdout | 2025-09-26 08:37:26,208 [257] [DEBUG] [app] Ending request: urn:request:fc878bc6-a848-4b8d-92f1-f1748a9ebac8 (/v2/testorg2/alpine/blobs/uploads/5a25e600-8e46-40e4-8333-f10ea4bd2452) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:fc878bc6-a848-4b8d-92f1-f1748a9ebac8', 'remote_addr': '10.129.4.11', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/5a25e600-8e46-40e4-8333-f10ea4bd2452', 'path': '/v2/testorg2/alpine/blobs/uploads/5a25e600-8e46-40e4-8333-f10ea4bd2452', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:26,208 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:26,208 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:26,209 [257] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:26 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/5a25e600-8e46-40e4-8333-f10ea4bd2452 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:26 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/5a25e600-8e46-40e4-8333-f10ea4bd2452 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.131 7420 0.131) gunicorn-registry stdout | 2025-09-26 08:37:26,250 [257] [DEBUG] [app] Starting request: urn:request:206f7b8a-14ae-437c-ba5c-70500872aff6 (/v2/testorg2/alpine/blobs/uploads/5a25e600-8e46-40e4-8333-f10ea4bd2452) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:26,250 [257] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '5a25e600-8e46-40e4-8333-f10ea4bd2452', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:26,250 [257] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:26,250 [257] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:26,251 [257] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:26,251 [257] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:26,251 [257] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:26,251 [257] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:26,251 [257] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:26,252 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,253 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,254 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,255 [257] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,256 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,257 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,258 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,259 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:26,260 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['5a25e600-8e46-40e4-8333-f10ea4bd2452', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,260 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:26,260 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:26,260 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:26,261 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:26,261 [257] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/09927cbb-8fb5-442d-b47f-ee1b58375034', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:26,261 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,261 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,261 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,261 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,261 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,262 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,262 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,262 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,262 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:26,262 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:26,262 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:26,262 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:26,262 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,262 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,262 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,262 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/09927cbb-8fb5-442d-b47f-ee1b58375034?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/09927cbb-8fb5-442d-b47f-ee1b58375034', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/09927cbb-8fb5-442d-b47f-ee1b58375034?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/09927cbb-8fb5-442d-b47f-ee1b58375034', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:26,262 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,262 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,262 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,262 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,262 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:26,263 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/09927cbb-8fb5-442d-b47f-ee1b58375034 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083726Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:26,263 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083726Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | d4dae87787471a8808eb6b7b0f4b28a044e3ec65eeb72633c8c2af4805176572 gunicorn-registry stdout | 2025-09-26 08:37:26,263 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 858cbdcea13951abc50134d51249b73998c145ddb6e60db1e909fc2283441b1b gunicorn-registry stdout | 2025-09-26 08:37:26,263 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,263 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:26,263 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:26,268 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/09927cbb-8fb5-442d-b47f-ee1b58375034?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:26,268 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ks8-74zbsh-jki', 'x-amz-id-2': 'mg0l9ks8-74zbsh-jki', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:26,269 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/09927cbb-8fb5-442d-b47f-ee1b5837503468d650c6d73ec60008f93582' gunicorn-registry stdout | 2025-09-26 08:37:26,269 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,269 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:26,269 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,269 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9ks8-74zbsh-jki', 'HostId': 'mg0l9ks8-74zbsh-jki', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ks8-74zbsh-jki', 'x-amz-id-2': 'mg0l9ks8-74zbsh-jki', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/09927cbb-8fb5-442d-b47f-ee1b58375034', 'UploadId': '68d650c6d73ec60008f93582'} gunicorn-registry stdout | 2025-09-26 08:37:26,269 [257] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:26,270 [257] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/09927cbb-8fb5-442d-b47f-ee1b58375034', 'UploadId': '68d650c6d73ec60008f93582'} gunicorn-registry stdout | 2025-09-26 08:37:26,270 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,270 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,270 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,270 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,270 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,270 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,270 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:26,270 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:26,270 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:26,270 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:26,270 [257] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,270 [257] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,270 [257] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,270 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/09927cbb-8fb5-442d-b47f-ee1b58375034', 'query_string': {'uploadId': '68d650c6d73ec60008f93582'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/09927cbb-8fb5-442d-b47f-ee1b58375034', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/09927cbb-8fb5-442d-b47f-ee1b58375034?uploadId=68d650c6d73ec60008f93582', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/09927cbb-8fb5-442d-b47f-ee1b58375034', 'UploadId': '68d650c6d73ec60008f93582'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:26,270 [257] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,270 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,271 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,271 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,271 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:26,271 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/09927cbb-8fb5-442d-b47f-ee1b58375034 gunicorn-registry stdout | uploadId=68d650c6d73ec60008f93582 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083726Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:26,271 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083726Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | b60f90e306b4e0aded7a216f643ce51679b9d0affa79def284971f839cc2c186 gunicorn-registry stdout | 2025-09-26 08:37:26,271 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 83862a7465988a592e2cc3fb0e58aecd6f4904b8b8f02bf81f2d74530b572e15 gunicorn-registry stdout | 2025-09-26 08:37:26,271 [257] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,271 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:26,272 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:26,278 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/09927cbb-8fb5-442d-b47f-ee1b58375034?uploadId=68d650c6d73ec60008f93582 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:37:26,278 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ksh-7a45qe-qjk', 'x-amz-id-2': 'mg0l9ksh-7a45qe-qjk', 'Date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:26,279 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:26,279 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,279 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:26,279 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,279 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9ksh-7a45qe-qjk', 'HostId': 'mg0l9ksh-7a45qe-qjk', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ksh-7a45qe-qjk', 'x-amz-id-2': 'mg0l9ksh-7a45qe-qjk', 'date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:37:26,279 [257] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 5a25e600-8e46-40e4-8333-f10ea4bd2452 took 0.018494129180908203 seconds gunicorn-registry stdout | 2025-09-26 08:37:26,279 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['5a25e600-8e46-40e4-8333-f10ea4bd2452', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,281 [257] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '5a25e600-8e46-40e4-8333-f10ea4bd2452', 5643, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwaWMiOnRydWV9fX01MDA2fV1dfX0sImh0dHBzOi8vbW9ieXByb2plY3Qub3JnL2J1aWxka2l0QHYxI2hlcm1ldAsAAAAAAAAAALAAAAAAAAC4RWA9239b9IJ3F1VYay8dn9weG5TylZd9JD5cmedz55RiLg==', 9, '{"chunks": [["uploads/75c5cb7c-048e-4788-9b66-0b7547638046", 0, 5643]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 37, 26, 33471), None, None, 69]) gunicorn-registry stdout | 2025-09-26 08:37:26,282 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:26,282 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:26,282 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:26,283 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:26,283 [257] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/3c/3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2'} gunicorn-registry stdout | 2025-09-26 08:37:26,283 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,283 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,283 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,283 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,283 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,284 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,284 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,284 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:26,284 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:26,284 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:26,284 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:26,284 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,284 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,284 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,284 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/3c/3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/3c/3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/3c/3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/3c/3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:26,284 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,284 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,284 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,284 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,284 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:26,284 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/3c/3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083726Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:26,285 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083726Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 7f7341fb630b2f04ae350d3b6cd50aeaa718268b14c21e4de87729453f4561e4 gunicorn-registry stdout | 2025-09-26 08:37:26,285 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 842fbc7f420a65f91f003930ffeb4f03d9324c73de4af6049e34af9d7de9a563 gunicorn-registry stdout | 2025-09-26 08:37:26,285 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,285 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:26,285 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:26,290 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/3c/3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:37:26,290 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ksu-7i4itp-m7v', 'x-amz-id-2': 'mg0l9ksu-7i4itp-m7v', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:26,290 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:26,290 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,290 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:26,290 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,290 [257] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:37:26,290 [257] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:37:26,290 [257] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/3c/3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2 gunicorn-registry stdout | 2025-09-26 08:37:26,291 [257] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:26,291 [257] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:26,291 [257] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:26,291 [257] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:37:26,291 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,291 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,291 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,291 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,291 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,291 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,291 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,291 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:26,291 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:26,291 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:26,291 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:26,292 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,292 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,292 [257] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,292 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:26,292 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,292 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,292 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,292 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,292 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,292 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:26,292 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083726Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:26,292 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083726Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 90eb444be6e947d9d1b39a3895ef82dc5d45e0dfb013b3784b880d6abb4e586f gunicorn-registry stdout | 2025-09-26 08:37:26,292 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | a58ef43621388f8792749cc7a02a732ad8d15e8a3960f461e47018f6c768cb8e gunicorn-registry stdout | 2025-09-26 08:37:26,292 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,292 [257] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,292 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:26,293 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:26,294 [257] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | 2025-09-26 08:37:26,323 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:26,323 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ktr-81mvlr-w0j', 'x-amz-id-2': 'mg0l9ktr-81mvlr-w0j', 'ETag': '"162b448acf2576190111be58d2fefa8d-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:26 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '5643', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:26,323 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:26,323 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,324 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:26,324 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,324 [257] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/3c/3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:37:26,324 [257] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:26,325 [257] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/3c/3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:26,325 [257] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/3c/3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:26,325 [257] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/3c/3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/3c/3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2', 'extra_args': {}, 'callbacks': [], 'size': 5643} gunicorn-registry stdout | 2025-09-26 08:37:26,325 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,325 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,325 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,325 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,325 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,325 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,325 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,325 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,325 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,325 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,325 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:26,325 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:26,325 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:26,325 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:26,325 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,325 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,326 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,326 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/3c/3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/3c/3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/3c/3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/3c/3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:26,326 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,326 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,326 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,326 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,326 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,326 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:26,326 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/3c/3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/75c5cb7c-048e-4788-9b66-0b7547638046 gunicorn-registry stdout | x-amz-date:20250926T083726Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:26,326 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083726Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 14b6736f07d452602a8fb56ec1a3ae6f78a7b38212d67ef1d16027e906166ef8 gunicorn-registry stdout | 2025-09-26 08:37:26,326 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 1b1579e9377bd2da027dfe170e3d81a424f56442849268a2ec259b422b58acaf gunicorn-registry stdout | 2025-09-26 08:37:26,326 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,326 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,326 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:26,327 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:26,327 [257] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:26,354 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/3c/3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:37:26,354 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ku0-86zntm-12xj', 'x-amz-id-2': 'mg0l9ku0-86zntm-12xj', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:26,354 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:37:26.000Z"162b448acf2576190111be58d2fefa8d-1"' gunicorn-registry stdout | 2025-09-26 08:37:26,355 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,355 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,355 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:26,355 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,355 [257] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:26,356 [257] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 5a25e600-8e46-40e4-8333-f10ea4bd2452 with digest sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2 took 0.06558561325073242 seconds gunicorn-registry stdout | 2025-09-26 08:37:26,356 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['5a25e600-8e46-40e4-8333-f10ea4bd2452', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,357 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,358 [257] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['36925669-113b-4565-9857-a10f3dd2b298', 5643, None, True, True, 'sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2']) gunicorn-registry stdout | 2025-09-26 08:37:26,359 [257] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [69, 9]) gunicorn-registry stdout | 2025-09-26 08:37:26,360 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,360 [257] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [3, 69, datetime.datetime(2025, 9, 26, 8, 37, 26, 360585), datetime.datetime(2025, 9, 26, 9, 37, 26, 360570)]) gunicorn-registry stdout | 2025-09-26 08:37:26,361 [257] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [69]) gunicorn-registry stdout | 2025-09-26 08:37:26,363 [257] [DEBUG] [app] Ending request: urn:request:206f7b8a-14ae-437c-ba5c-70500872aff6 (/v2/testorg2/alpine/blobs/uploads/5a25e600-8e46-40e4-8333-f10ea4bd2452) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:206f7b8a-14ae-437c-ba5c-70500872aff6', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/5a25e600-8e46-40e4-8333-f10ea4bd2452?digest=sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2', 'path': '/v2/testorg2/alpine/blobs/uploads/5a25e600-8e46-40e4-8333-f10ea4bd2452', 'parameters': {'digest': 'sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:26,363 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:26,363 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:26,363 [257] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:26 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/5a25e600-8e46-40e4-8333-f10ea4bd2452?digest=sha256%3A3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:26 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/5a25e600-8e46-40e4-8333-f10ea4bd2452?digest=sha256%3A3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.114 1853 0.115) proxycacheblobworker stdout | 2025-09-26 08:37:26,484 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:37:26,484 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:32.477454+00:00 (in 5.993178 seconds) proxycacheblobworker stdout | 2025-09-26 08:37:26,484 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:26 GMT)" (scheduled at 2025-09-26 08:37:26.483749+00:00) proxycacheblobworker stdout | 2025-09-26 08:37:26,484 [69] [DEBUG] [workers.queueworker] Running watchdog. proxycacheblobworker stdout | 2025-09-26 08:37:26,484 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:26 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:37:26,598 [251] [DEBUG] [app] Starting request: urn:request:0ff011c1-7cfb-4f51-9260-9c50f3d73926 (/v2/testorg2/alpine/blobs/sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:26,598 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:26,598 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:26,599 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:26,600 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:26,600 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:26,600 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:26,600 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:26,600 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:26,601 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,602 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,603 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:26,604 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0_2 gunicorn-registry stdout | 2025-09-26 08:37:26,604 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:26,604 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,605 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,606 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,608 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,609 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,610 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0_2: None gunicorn-registry stdout | 2025-09-26 08:37:26,610 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0_2: None gunicorn-registry stdout | 2025-09-26 08:37:26,610 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:26,610 [251] [DEBUG] [app] Ending request: urn:request:0ff011c1-7cfb-4f51-9260-9c50f3d73926 (/v2/testorg2/alpine/blobs/sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:0ff011c1-7cfb-4f51-9260-9c50f3d73926', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 'path': '/v2/testorg2/alpine/blobs/sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:26,611 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:26,611 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:26,611 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:26 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:26 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.014 1718 0.014) gunicorn-registry stdout | 2025-09-26 08:37:26,652 [251] [DEBUG] [app] Starting request: urn:request:bbd94c6b-0ed7-41e1-8fb9-59daf8781cfa (/v2/testorg2/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:26,652 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:26,652 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:26,652 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:26,652 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:26,653 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:26,653 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:26,653 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:26,653 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:26,653 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,654 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,655 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,656 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,658 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,659 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,660 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:26,661 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,662 [251] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [3, 'b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 37, 26, 661821)]) gunicorn-registry stdout | 2025-09-26 08:37:26,664 [251] [DEBUG] [app] Ending request: urn:request:bbd94c6b-0ed7-41e1-8fb9-59daf8781cfa (/v2/testorg2/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:bbd94c6b-0ed7-41e1-8fb9-59daf8781cfa', 'remote_addr': '10.129.4.11', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/', 'path': '/v2/testorg2/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:26,664 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:26,664 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:26,664 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:26 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:26 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.013 1697 0.013) gunicorn-registry stdout | 2025-09-26 08:37:26,705 [251] [DEBUG] [app] Starting request: urn:request:631675a4-79ec-4e2c-938d-a84678b5a28e (/v2/testorg2/alpine/blobs/uploads/b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:26,705 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:26,705 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:26,705 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:26,706 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:26,706 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:26,706 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:26,706 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:26,706 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:26,706 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,708 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,708 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,709 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,711 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,711 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,712 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,713 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:26,714 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,715 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:26,715 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:26,715 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:26,716 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:26,716 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:26,716 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,716 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,716 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,717 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,717 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,717 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,717 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,717 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,717 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:26,717 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:26,717 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:26,717 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:26,717 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,717 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,717 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,717 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:26,717 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,717 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,717 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,717 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,718 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:26,718 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083726Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:26,718 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083726Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | e62b0ff0d48a181847688993db008a188bbe5077219979f88300a542572cd96f gunicorn-registry stdout | 2025-09-26 08:37:26,718 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | ac27cef3e0760c61e67448ff7f04fa07c8341c5bdc34d28761dff1c9e5e910f8 gunicorn-registry stdout | 2025-09-26 08:37:26,718 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,718 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:26,718 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:26,725 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:26,725 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9l4v-eo4sla-6x8', 'x-amz-id-2': 'mg0l9l4v-eo4sla-6x8', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:26,725 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b68d650c6d73ec60008f93588' gunicorn-registry stdout | 2025-09-26 08:37:26,725 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,725 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:26,725 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,725 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9l4v-eo4sla-6x8', 'HostId': 'mg0l9l4v-eo4sla-6x8', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9l4v-eo4sla-6x8', 'x-amz-id-2': 'mg0l9l4v-eo4sla-6x8', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b', 'UploadId': '68d650c6d73ec60008f93588'} gunicorn-registry stdout | 2025-09-26 08:37:26,725 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:26,726 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:26,726 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:26,726 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b', 'UploadId': '68d650c6d73ec60008f93588', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89f96c0>, 'ContentLength': 241} gunicorn-registry stdout | 2025-09-26 08:37:26,726 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,726 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,726 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,726 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,726 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,726 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,726 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,726 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,727 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:26,727 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:26,727 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:26,727 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:26,727 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,727 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,727 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:26,727 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,727 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,727 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b', 'query_string': {'uploadId': '68d650c6d73ec60008f93588', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '241', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': '4KVi/NUoZfsj8mMKInoIrw==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b89f96c0>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b?uploadId=68d650c6d73ec60008f93588&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b', 'UploadId': '68d650c6d73ec60008f93588', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89f96c0>, 'ContentLength': 241}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:26,727 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,727 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,727 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,727 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,727 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:26,727 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b gunicorn-registry stdout | partNumber=1&uploadId=68d650c6d73ec60008f93588 gunicorn-registry stdout | content-length:241 gunicorn-registry stdout | content-md5:4KVi/NUoZfsj8mMKInoIrw== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083726Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:26,728 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083726Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | bf411a69be7d7973959cc6b9bd259f002ec5ab26da70cf9cf89d6ac70b1aeef8 gunicorn-registry stdout | 2025-09-26 08:37:26,728 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 20b0f8f0b31a00bd03cb192d8a12351caaf0ad9891310ba7f9f8a6860586602f gunicorn-registry stdout | 2025-09-26 08:37:26,728 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,728 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:26,728 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:26,729 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:37:26,730 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:37:26,808 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b?uploadId=68d650c6d73ec60008f93588&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:26,808 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9l55-eu3tey-cyc', 'x-amz-id-2': 'mg0l9l55-eu3tey-cyc', 'ETag': '"e0a562fcd52865fb23f2630a227a08af"', 'Date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:26,808 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:26,808 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,808 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:26,808 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,808 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9l55-eu3tey-cyc', 'HostId': 'mg0l9l55-eu3tey-cyc', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9l55-eu3tey-cyc', 'x-amz-id-2': 'mg0l9l55-eu3tey-cyc', 'etag': '"e0a562fcd52865fb23f2630a227a08af"', 'date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"e0a562fcd52865fb23f2630a227a08af"'} gunicorn-registry stdout | 2025-09-26 08:37:26,808 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b', 'UploadId': '68d650c6d73ec60008f93588', 'MultipartUpload': {'Parts': [{'ETag': '"e0a562fcd52865fb23f2630a227a08af"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:26,808 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,808 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,808 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,808 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,809 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,809 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,809 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,809 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:26,809 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:26,809 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:26,809 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:26,809 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,809 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,809 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,809 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b', 'query_string': {'uploadId': '68d650c6d73ec60008f93588'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"e0a562fcd52865fb23f2630a227a08af"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b?uploadId=68d650c6d73ec60008f93588', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b', 'UploadId': '68d650c6d73ec60008f93588', 'MultipartUpload': {'Parts': [{'ETag': '"e0a562fcd52865fb23f2630a227a08af"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:26,809 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,809 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,809 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,809 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,810 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:26,810 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b gunicorn-registry stdout | uploadId=68d650c6d73ec60008f93588 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:8e09fc6bc6a42c396da50d99c7a834288d9ebd61ded4d6c07f918ff50745ae55 gunicorn-registry stdout | x-amz-date:20250926T083726Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 8e09fc6bc6a42c396da50d99c7a834288d9ebd61ded4d6c07f918ff50745ae55 gunicorn-registry stdout | 2025-09-26 08:37:26,810 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083726Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 703be46b0c4be8b68fe5c4d279311387f28aa24624a73ebac8b77e620c33c677 gunicorn-registry stdout | 2025-09-26 08:37:26,810 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 406b67bbed5224eda3b752499934f9d167d410e9bae2aebc370dcc9c3ca8c14c gunicorn-registry stdout | 2025-09-26 08:37:26,810 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,810 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:26,810 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:26,825 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b?uploadId=68d650c6d73ec60008f93588 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:26,825 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9l7f-g6quqt-uen', 'x-amz-id-2': 'mg0l9l7f-g6quqt-uen', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:26,825 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b"13a49bc13fb9f5097d1550bda295ce65-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b?uploadId=68d650c6d73ec60008f93588' gunicorn-registry stdout | 2025-09-26 08:37:26,826 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,826 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,826 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:26,826 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,826 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9l7f-g6quqt-uen', 'HostId': 'mg0l9l7f-g6quqt-uen', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9l7f-g6quqt-uen', 'x-amz-id-2': 'mg0l9l7f-g6quqt-uen', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b?uploadId=68d650c6d73ec60008f93588', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b', 'ETag': '"13a49bc13fb9f5097d1550bda295ce65-1"'} gunicorn-registry stdout | 2025-09-26 08:37:26,826 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:26,827 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:26,827 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 241 bytes to blob b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19 took 0.11182904243469238 seconds gunicorn-registry stdout | 2025-09-26 08:37:26,827 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,828 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, 'b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19', 241, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwNDBjZGE3M2NiYTZjNWNjNTA2OGRiNGNiNGU4YmY5OWNjYzBhZTExZWNhYWEyIl19fTk4YjFjMTNmNjk1NGM5NDEAAAAAAAAAAAYAAAAAAAD+D+K9LCzAgvHC1u5VTd1CqmXPsfAK9pdS8Oe13xm9+5RiLg==', 9, '{"chunks": [["uploads/822b8544-257d-4fa4-9ebe-76926f55d65b", 0, 241]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 37, 26, 661821), None, None, 70]) gunicorn-registry stdout | 2025-09-26 08:37:26,830 [251] [DEBUG] [app] Ending request: urn:request:631675a4-79ec-4e2c-938d-a84678b5a28e (/v2/testorg2/alpine/blobs/uploads/b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:631675a4-79ec-4e2c-938d-a84678b5a28e', 'remote_addr': '10.129.4.11', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19', 'path': '/v2/testorg2/alpine/blobs/uploads/b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:26,830 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:26,830 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:26,831 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:26 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:26 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.127 2017 0.127) gunicorn-registry stdout | 2025-09-26 08:37:26,871 [251] [DEBUG] [app] Starting request: urn:request:5e45487d-2673-47bc-875d-282722ba2acd (/v2/testorg2/alpine/blobs/uploads/b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:26,871 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:26,871 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:26,871 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:26,872 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:26,873 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:26,873 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:26,873 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:26,873 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:26,874 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,875 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,876 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,877 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,877 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,878 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,880 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,880 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:26,881 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,882 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:26,882 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:26,882 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:26,883 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:26,883 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b0471a18-9a67-4acd-88e2-8f6e885c471d', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:26,883 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,883 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,883 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,883 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,883 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,883 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,883 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,883 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,883 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:26,883 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:26,883 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:26,883 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:26,884 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,884 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,884 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,884 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/b0471a18-9a67-4acd-88e2-8f6e885c471d?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b0471a18-9a67-4acd-88e2-8f6e885c471d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b0471a18-9a67-4acd-88e2-8f6e885c471d?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b0471a18-9a67-4acd-88e2-8f6e885c471d', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:26,884 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,884 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,884 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,884 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,884 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:26,884 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b0471a18-9a67-4acd-88e2-8f6e885c471d gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083726Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:26,884 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083726Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 87764691136c12c386c1bd583f27bfceda1af40c60821d56206ae80ab52fa940 gunicorn-registry stdout | 2025-09-26 08:37:26,884 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 3c6982b068fa8a2f417c4a6678bb36b0d9e82f325b7f90e9fe9544457f7c97cd gunicorn-registry stdout | 2025-09-26 08:37:26,884 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,884 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:26,885 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:26,892 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b0471a18-9a67-4acd-88e2-8f6e885c471d?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:26,892 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9l9i-w1ev0-pnt', 'x-amz-id-2': 'mg0l9l9i-w1ev0-pnt', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:26,892 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/b0471a18-9a67-4acd-88e2-8f6e885c471d68d650c6d73ec60008f9358e' gunicorn-registry stdout | 2025-09-26 08:37:26,892 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,892 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:26,892 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,892 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9l9i-w1ev0-pnt', 'HostId': 'mg0l9l9i-w1ev0-pnt', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9l9i-w1ev0-pnt', 'x-amz-id-2': 'mg0l9l9i-w1ev0-pnt', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b0471a18-9a67-4acd-88e2-8f6e885c471d', 'UploadId': '68d650c6d73ec60008f9358e'} gunicorn-registry stdout | 2025-09-26 08:37:26,892 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:26,893 [251] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b0471a18-9a67-4acd-88e2-8f6e885c471d', 'UploadId': '68d650c6d73ec60008f9358e'} gunicorn-registry stdout | 2025-09-26 08:37:26,893 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,893 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,893 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,893 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,893 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,893 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,893 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:26,893 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:26,893 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:26,893 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:26,893 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,893 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,893 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,893 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/b0471a18-9a67-4acd-88e2-8f6e885c471d', 'query_string': {'uploadId': '68d650c6d73ec60008f9358e'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b0471a18-9a67-4acd-88e2-8f6e885c471d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b0471a18-9a67-4acd-88e2-8f6e885c471d?uploadId=68d650c6d73ec60008f9358e', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b0471a18-9a67-4acd-88e2-8f6e885c471d', 'UploadId': '68d650c6d73ec60008f9358e'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:26,893 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,894 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,894 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,894 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,894 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:26,894 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b0471a18-9a67-4acd-88e2-8f6e885c471d gunicorn-registry stdout | uploadId=68d650c6d73ec60008f9358e gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083726Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:26,894 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083726Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 409678ede1ace1a07c2d4f007e84664fb4dbcea8f4237ee6784a747f6db2b44c gunicorn-registry stdout | 2025-09-26 08:37:26,894 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | efa9507606c51dcdafb805b8a155b0bfeca119c3e8442df216de8ddcc1b32554 gunicorn-registry stdout | 2025-09-26 08:37:26,894 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,894 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:26,894 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:26,901 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b0471a18-9a67-4acd-88e2-8f6e885c471d?uploadId=68d650c6d73ec60008f9358e HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:37:26,901 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9l9r-11d6pw-1dhy', 'x-amz-id-2': 'mg0l9l9r-11d6pw-1dhy', 'Date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:26,901 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:26,901 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,901 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:26,901 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,901 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9l9r-11d6pw-1dhy', 'HostId': 'mg0l9l9r-11d6pw-1dhy', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9l9r-11d6pw-1dhy', 'x-amz-id-2': 'mg0l9l9r-11d6pw-1dhy', 'date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:37:26,901 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19 took 0.019086360931396484 seconds gunicorn-registry stdout | 2025-09-26 08:37:26,902 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,903 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, 'b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19', 241, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwNDBjZGE3M2NiYTZjNWNjNTA2OGRiNGNiNGU4YmY5OWNjYzBhZTExZWNhYWEyIl19fTk4YjFjMTNmNjk1NGM5NDEAAAAAAAAAAAYAAAAAAAD+D+K9LCzAgvHC1u5VTd1CqmXPsfAK9pdS8Oe13xm9+5RiLg==', 9, '{"chunks": [["uploads/822b8544-257d-4fa4-9ebe-76926f55d65b", 0, 241]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 37, 26, 661821), None, None, 70]) gunicorn-registry stdout | 2025-09-26 08:37:26,904 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:26,904 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:26,905 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:26,905 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:26,905 [251] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0'} gunicorn-registry stdout | 2025-09-26 08:37:26,905 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,905 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,905 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,905 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,905 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,906 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,906 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,906 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:26,906 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:26,906 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:26,906 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:26,906 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,906 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,906 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,906 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:26,906 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,906 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,906 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,906 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,906 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:26,906 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083726Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:26,906 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083726Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 98437a0ab5f9160cf5295deae52ef63621156fdd68b6d26837728df93e262129 gunicorn-registry stdout | 2025-09-26 08:37:26,907 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 419006b9b5a016c5042a0c7d7a91e8474ab9e75458c331aca669416e25fa4ead gunicorn-registry stdout | 2025-09-26 08:37:26,907 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,907 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:26,907 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:26,912 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:37:26,912 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9la4-19566y-17l4', 'x-amz-id-2': 'mg0l9la4-19566y-17l4', 'Content-Type': 'application/xml', 'Content-Length': '339', 'Date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:26,912 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:26,912 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,912 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:26,912 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,912 [251] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:37:26,912 [251] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:37:26,912 [251] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0 gunicorn-registry stdout | 2025-09-26 08:37:26,913 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:26,913 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:26,913 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:26,913 [251] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:37:26,913 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,913 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,913 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,913 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,913 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,913 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,913 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,914 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:26,914 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:26,914 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:26,914 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:26,914 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,914 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,914 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,914 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:26,914 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,914 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,914 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,914 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,914 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,914 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:26,914 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083726Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:26,914 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083726Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | adff7d210313272b00202ae648f12f1ff78aadcc9d29c25ba4f69cc8655a1d19 gunicorn-registry stdout | 2025-09-26 08:37:26,914 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 97d17f91487222969f065ed0547c52f89186dc4aaedf4dc0d8e6ae1aa75038b6 gunicorn-registry stdout | 2025-09-26 08:37:26,915 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,915 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,915 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:26,915 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:26,919 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:26,920 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9lac-1dtlrb-bic', 'x-amz-id-2': 'mg0l9lac-1dtlrb-bic', 'ETag': '"13a49bc13fb9f5097d1550bda295ce65-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:26 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:26,920 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:26,920 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,920 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:26,920 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,920 [251] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:37:26,920 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:26,920 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:26,920 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:26,920 [251] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 'extra_args': {}, 'callbacks': [], 'size': 241} gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,921 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,922 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:26,922 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/822b8544-257d-4fa4-9ebe-76926f55d65b gunicorn-registry stdout | x-amz-date:20250926T083726Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:26,922 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083726Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | daefa1a083c09af6a32ce2d7f2c14bfe7f5ae433b635cb2972e4870452eafa71 gunicorn-registry stdout | 2025-09-26 08:37:26,922 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 4c3769c502e42aacab4666635435455404d308e90b40f29341a5d7a83e1bb2ad gunicorn-registry stdout | 2025-09-26 08:37:26,922 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,922 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,922 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:26,922 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:26,923 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None notificationworker stdout | 2025-09-26 08:37:26,946 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} gunicorn-registry stdout | 2025-09-26 08:37:26,948 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:37:26,948 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9lak-1iefkt-fee', 'x-amz-id-2': 'mg0l9lak-1iefkt-fee', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:37:26 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:26,948 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:37:26.000Z"13a49bc13fb9f5097d1550bda295ce65-1"' gunicorn-registry stdout | 2025-09-26 08:37:26,949 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,949 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:26,949 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:26,949 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:26,949 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:26,949 [251] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19 with digest sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0 took 0.03672456741333008 seconds gunicorn-registry stdout | 2025-09-26 08:37:26,950 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,951 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,951 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['ac420d3f-d252-48e1-b87f-f7d86072e99e', 241, None, True, True, 'sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0']) gunicorn-registry stdout | 2025-09-26 08:37:26,952 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [71, 9]) gunicorn-registry stdout | 2025-09-26 08:37:26,952 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:26,953 [251] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [3, 71, datetime.datetime(2025, 9, 26, 8, 37, 26, 953359), datetime.datetime(2025, 9, 26, 9, 37, 26, 953345)]) gunicorn-registry stdout | 2025-09-26 08:37:26,954 [251] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [70]) gunicorn-registry stdout | 2025-09-26 08:37:26,956 [251] [DEBUG] [app] Ending request: urn:request:5e45487d-2673-47bc-875d-282722ba2acd (/v2/testorg2/alpine/blobs/uploads/b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:5e45487d-2673-47bc-875d-282722ba2acd', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19?digest=sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 'path': '/v2/testorg2/alpine/blobs/uploads/b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19', 'parameters': {'digest': 'sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:26,956 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:26,956 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:26,956 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:26 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19?digest=sha256%3Ab296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:26 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/b6edf3e5-ebc6-4d9d-bcf5-1fb02d2fca19?digest=sha256%3Ab296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.085 1853 0.086) gunicorn-registry stdout | 2025-09-26 08:37:27,013 [251] [DEBUG] [app] Starting request: urn:request:1fed828a-aae8-4602-aa0b-cc92c7102744 (/v2/testorg2/alpine/manifests/sha256:b2fa67becb6440be30274faba2517139ef13ac375987cb92d201a09f63f81ed7) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:27,013 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'manifest_ref': 'sha256:b2fa67becb6440be30274faba2517139ef13ac375987cb92d201a09f63f81ed7', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:27,013 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:27,013 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:27,014 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:27,014 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:27,014 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:27,014 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:27,014 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:27,015 [251] [DEBUG] [data.cache.cache_key] Loading repository lookup from cache_key: repository_lookup_testorg2_alpine gunicorn-registry stdout | 2025-09-26 08:37:27,016 [251] [DEBUG] [data.cache.impl] Checking cache for key repository_lookup_testorg2_alpine gunicorn-registry stdout | 2025-09-26 08:37:27,016 [251] [DEBUG] [data.cache.impl] Found result in cache for key repository_lookup_testorg2_alpine: {'id': 3, 'visibility': {'id': 2, 'name': 'private'}, 'kind': {'id': 1, 'name': 'image'}, 'state': 0, 'namespace_user': {'stripe_id': None}} gunicorn-registry stdout | 2025-09-26 08:37:27,017 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:b2fa67becb6440be30274faba2517139ef13ac375987cb92d201a09f63f81ed7', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:27,019 [251] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL ((SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "uploadedblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1") UNION ALL (SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "uploadedblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q2"))', [3, 'sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 1, 3, 'sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2', 1, 3, 'sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7', 1]) gunicorn-registry stdout | 2025-09-26 08:37:27,020 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."digest" = %s) AND ("t1"."repository_id" = %s)) LIMIT %s OFFSET %s', ['sha256:b2fa67becb6440be30274faba2517139ef13ac375987cb92d201a09f63f81ed7', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:27,021 [251] [DEBUG] [peewee] ('INSERT INTO "manifest" ("repository_id", "digest", "media_type_id", "manifest_bytes", "config_media_type", "layers_compressed_size", "subject", "subject_backfilled", "artifact_type", "artifact_type_backfilled") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifest"."id"', [3, 'sha256:b2fa67becb6440be30274faba2517139ef13ac375987cb92d201a09f63f81ed7', 18, '{\n "schemaVersion": 2,\n "mediaType": "application/vnd.oci.image.manifest.v1+json",\n "config": {\n "mediaType": "application/vnd.oci.image.config.v1+json",\n "digest": "sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0",\n "size": 241\n },\n "layers": [\n {\n "mediaType": "application/vnd.in-toto+json",\n "digest": "sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7",\n "size": 80931,\n "annotations": {\n "in-toto.io/predicate-type": "https://spdx.dev/Document"\n }\n },\n {\n "mediaType": "application/vnd.in-toto+json",\n "digest": "sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2",\n "size": 5643,\n "annotations": {\n "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2"\n }\n }\n ]\n}', 'application/vnd.oci.image.config.v1+json', 86574, None, True, None, True]) gunicorn-registry stdout | 2025-09-26 08:37:27,022 [251] [DEBUG] [peewee] ('INSERT INTO "manifestblob" ("repository_id", "manifest_id", "blob_id") VALUES (%s, %s, %s), (%s, %s, %s), (%s, %s, %s) RETURNING "manifestblob"."id"', [3, 28, 69, 3, 28, 70, 3, 28, 71]) gunicorn-registry stdout | 2025-09-26 08:37:27,022 [251] [DEBUG] [peewee] ('SELECT "t1"."namespace_user_id" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:27,023 [251] [DEBUG] [peewee] ('SELECT 1 FROM "user" AS "t1" WHERE ((("t1"."id" = %s) AND "t1"."enabled") AND NOT "t1"."robot") LIMIT %s', [4, 1]) gunicorn-registry stdout | 2025-09-26 08:37:27,024 [251] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [4, 71, 28, 1]) gunicorn-registry stdout | 2025-09-26 08:37:27,024 [251] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [4, 69, 28, 1]) gunicorn-registry stdout | 2025-09-26 08:37:27,025 [251] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [4, 70, 28, 1]) gunicorn-registry stdout | 2025-09-26 08:37:27,025 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:27,026 [251] [INFO] [data.model.quota] updating namespace size for manifest 28 in namespace 4, QuotaOperation.ADD 86815 gunicorn-registry stdout | 2025-09-26 08:37:27,026 [251] [DEBUG] [peewee] ('UPDATE "quotanamespacesize" SET "size_bytes" = ("quotanamespacesize"."size_bytes" + %s) WHERE ("quotanamespacesize"."namespace_user_id" = %s)', [86815, 4]) gunicorn-registry stdout | 2025-09-26 08:37:27,026 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotarepositorysize" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:27,027 [251] [INFO] [data.model.quota] updating repository size for manifest 28 in repository 3, QuotaOperation.ADD 86815 gunicorn-registry stdout | 2025-09-26 08:37:27,027 [251] [DEBUG] [peewee] ('UPDATE "quotarepositorysize" SET "size_bytes" = ("quotarepositorysize"."size_bytes" + %s) WHERE ("quotarepositorysize"."repository_id" = %s)', [86815, 3]) gunicorn-registry stdout | 2025-09-26 08:37:27,028 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [28, None, 1758879447027, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:27,029 [251] [DEBUG] [peewee] ('INSERT INTO "tag" ("name", "repository_id", "manifest_id", "lifetime_start_ms", "lifetime_end_ms", "immutable", "hidden", "reversion", "tag_kind_id") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "tag"."id"', ['$temp-c4ebfb3a-a45e-4646-b562-497188ce9d4e', 3, 28, 1758875847027, 1758879447027, False, True, False, 1]) gunicorn-registry stdout | 2025-09-26 08:37:27,031 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:27,032 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['ac420d3f-d252-48e1-b87f-f7d86072e99e']) gunicorn-registry stdout | 2025-09-26 08:37:27,033 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:27,034 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:27,034 [251] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0'} gunicorn-registry stdout | 2025-09-26 08:37:27,034 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:27,034 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:27,034 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:27,035 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:27,035 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:27,035 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:27,035 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:27,035 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:27,035 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:27,035 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:27,035 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:27,035 [251] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:27,035 [251] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:27,035 [251] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:27,035 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:27,036 [251] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:27,036 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:27,036 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:27,036 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:27,036 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:27,036 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083727Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:27,036 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083727Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | c9898716247cf0e9fb6799bc002bf12294417cfe7dfe54d0cdea3673f92cbb63 gunicorn-registry stdout | 2025-09-26 08:37:27,036 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | a5e705763411ddef9f260d75c6c04e6fa229c806846baea7d3db90f34caa5949 gunicorn-registry stdout | 2025-09-26 08:37:27,036 [251] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:27,036 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:27,036 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem repositoryactioncounter stdout | 2025-09-26 08:37:27,040 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} gcworker stdout | 2025-09-26 08:37:27,083 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:37:27,084 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:37.085344+00:00 (in 10.001147 seconds) gcworker stdout | 2025-09-26 08:37:27,084 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:57 GMT)" (scheduled at 2025-09-26 08:37:27.083344+00:00) gcworker stdout | 2025-09-26 08:37:27,084 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:37:27,084 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:37:57 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:37:27,096 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b2/b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0 HTTP/1.1" 200 241 gunicorn-registry stdout | 2025-09-26 08:37:27,097 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ldq-3e6vu0-199r', 'x-amz-id-2': 'mg0l9ldq-3e6vu0-199r', 'ETag': '"13a49bc13fb9f5097d1550bda295ce65-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:26 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:27 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:27,097 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:27,097 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:27,097 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:27,097 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:27,098 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9ldq-3e6vu0-199r', 'HostId': 'mg0l9ldq-3e6vu0-199r', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ldq-3e6vu0-199r', 'x-amz-id-2': 'mg0l9ldq-3e6vu0-199r', 'etag': '"13a49bc13fb9f5097d1550bda295ce65-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:26 GMT', 'content-type': 'application/octet-stream', 'content-length': '241', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:27 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 26, tzinfo=tzutc()), 'ContentLength': 241, 'ETag': '"13a49bc13fb9f5097d1550bda295ce65-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:27,099 [251] [DEBUG] [app] Ending request: urn:request:1fed828a-aae8-4602-aa0b-cc92c7102744 (/v2/testorg2/alpine/manifests/sha256:b2fa67becb6440be30274faba2517139ef13ac375987cb92d201a09f63f81ed7) {'endpoint': 'v2.write_manifest_by_digest', 'request_id': 'urn:request:1fed828a-aae8-4602-aa0b-cc92c7102744', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/manifests/sha256:b2fa67becb6440be30274faba2517139ef13ac375987cb92d201a09f63f81ed7', 'path': '/v2/testorg2/alpine/manifests/sha256:b2fa67becb6440be30274faba2517139ef13ac375987cb92d201a09f63f81ed7', 'parameters': {}, 'json_body': {'schemaVersion': 2, 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'config': {'mediaType': 'application/vnd.oci.image.config.v1+json', 'digest': 'sha256:b296a0a235c726e03592aeeb29590fbfb5c5ee9ef35a12e8ea0f90423f2fb8a0', 'size': 241}, 'layers': [{'mediaType': 'application/vnd.in-toto+json', 'digest': 'sha256:b8214fa57fb5bdf88dfda32417ef6501734debd6772ad9f514c0f9901ac0d2c7', 'size': 80931, 'annotations': {'in-toto.io/predicate-type': 'https://spdx.dev/Document'}}, {'mediaType': 'application/vnd.in-toto+json', 'digest': 'sha256:3cf698b1c13f6954c9440cda73cba6c5cc5068db4cb4e8bf99ccc0ae11ecaaa2', 'size': 5643, 'annotations': {'in-toto.io/predicate-type': 'https://slsa.dev/provenance/v0.2'}}]}, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:27,100 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:27,100 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:27 +0000] "PUT /v2/testorg2/alpine/manifests/sha256:b2fa67becb6440be30274faba2517139ef13ac375987cb92d201a09f63f81ed7 HTTP/1.1" 201 2 "-" "skopeo/1.14.5" (0.088 2661 0.088) gunicorn-registry stdout | 2025-09-26 08:37:27,100 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:27 +0000] "PUT /v2/testorg2/alpine/manifests/sha256:b2fa67becb6440be30274faba2517139ef13ac375987cb92d201a09f63f81ed7 HTTP/1.1" 201 2 "-" "skopeo/1.14.5" exportactionlogsworker stdout | 2025-09-26 08:37:27,229 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} manifestsubjectbackfillworker stdout | 2025-09-26 08:37:27,760 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} repositorygcworker stdout | 2025-09-26 08:37:28,077 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:37:28,077 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:19.075668+00:00 (in 50.998001 seconds) repositorygcworker stdout | 2025-09-26 08:37:28,077 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:28 GMT)" (scheduled at 2025-09-26 08:37:28.077240+00:00) repositorygcworker stdout | 2025-09-26 08:37:28,077 [81] [DEBUG] [workers.queueworker] Running watchdog. repositorygcworker stdout | 2025-09-26 08:37:28,078 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:28 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:37:28,452 [258] [DEBUG] [app] Starting request: urn:request:315265bf-54a5-47c6-bcfc-b041cc9c9871 (/v2/testorg2/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:28,452 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:28,452 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:28,452 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:28,454 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:28,454 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:28,454 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:28,454 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:28,454 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:28,455 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,456 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,457 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,458 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,460 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,461 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,462 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:28,463 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,464 [258] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [3, 'd725782c-319a-4c16-bbc5-5870f4329847', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 37, 28, 463725)]) gunicorn-registry stdout | 2025-09-26 08:37:28,466 [258] [DEBUG] [app] Ending request: urn:request:315265bf-54a5-47c6-bcfc-b041cc9c9871 (/v2/testorg2/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:315265bf-54a5-47c6-bcfc-b041cc9c9871', 'remote_addr': '10.129.4.11', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/', 'path': '/v2/testorg2/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:28,466 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:28,466 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:28 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.016 1697 0.016) gunicorn-registry stdout | 2025-09-26 08:37:28,467 [258] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:28 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" gunicorn-registry stdout | 2025-09-26 08:37:28,507 [257] [DEBUG] [app] Starting request: urn:request:8a84695c-3951-4605-a5f9-644194de07d8 (/v2/testorg2/alpine/blobs/uploads/d725782c-319a-4c16-bbc5-5870f4329847) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:28,508 [257] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'd725782c-319a-4c16-bbc5-5870f4329847', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:28,508 [257] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:28,508 [257] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:28,509 [257] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:28,509 [257] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:28,509 [257] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:28,509 [257] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:28,509 [257] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:28,510 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,511 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,513 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,514 [257] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,514 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,515 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,516 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,517 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:28,518 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['d725782c-319a-4c16-bbc5-5870f4329847', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,519 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:28,519 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:28,519 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:28,520 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:28,520 [257] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:28,520 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,520 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,520 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,520 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,520 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:28,520 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,520 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,520 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:28,520 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:28,520 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:28,521 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:28,521 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:28,522 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,522 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,522 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,522 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:28,522 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:28,522 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:28,522 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,522 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,522 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:28,522 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083728Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:28,522 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083728Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 787c0049138d1d0edfe01cc3e498e178a6ace75a70a05669bd0d17f9beaa93b4 gunicorn-registry stdout | 2025-09-26 08:37:28,522 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | a88640c7b181c681f83f61a0ad9148fa14afacfe891de0356ea776aac3ba34bf gunicorn-registry stdout | 2025-09-26 08:37:28,522 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,522 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:28,523 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:28,529 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:28,529 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9mj0-bfqecu-irc', 'x-amz-id-2': 'mg0l9mj0-bfqecu-irc', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:28 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:28,529 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa68d650c8d73ec60008f9359a' gunicorn-registry stdout | 2025-09-26 08:37:28,529 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,529 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:28,529 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:28,529 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9mj0-bfqecu-irc', 'HostId': 'mg0l9mj0-bfqecu-irc', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9mj0-bfqecu-irc', 'x-amz-id-2': 'mg0l9mj0-bfqecu-irc', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:28 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa', 'UploadId': '68d650c8d73ec60008f9359a'} gunicorn-registry stdout | 2025-09-26 08:37:28,529 [257] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:28,530 [257] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:28,530 [257] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:28,530 [257] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa', 'UploadId': '68d650c8d73ec60008f9359a', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89f5e40>, 'ContentLength': 584} gunicorn-registry stdout | 2025-09-26 08:37:28,531 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,531 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,531 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,531 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,531 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:28,531 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,531 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,531 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:28,531 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:28,531 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:28,531 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:28,531 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:28,531 [257] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,531 [257] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,531 [257] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:28,531 [257] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,531 [257] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,531 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa', 'query_string': {'uploadId': '68d650c8d73ec60008f9359a', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '584', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': '2oal85qbD3vJs3mWapZPLQ==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b89f5e40>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa?uploadId=68d650c8d73ec60008f9359a&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa', 'UploadId': '68d650c8d73ec60008f9359a', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89f5e40>, 'ContentLength': 584}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:28,531 [257] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:28,532 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:28,532 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,532 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,532 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:28,532 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa gunicorn-registry stdout | partNumber=1&uploadId=68d650c8d73ec60008f9359a gunicorn-registry stdout | content-length:584 gunicorn-registry stdout | content-md5:2oal85qbD3vJs3mWapZPLQ== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083728Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:28,532 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083728Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | a7286b1442b9c3f9345b0fa9572f315193805892339e08f4c55c45c095614724 gunicorn-registry stdout | 2025-09-26 08:37:28,532 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | d2f1d8716c135d3673c6589cdc56da499bd598701b308e7294380b7d1f6125b0 gunicorn-registry stdout | 2025-09-26 08:37:28,532 [257] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,532 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:28,532 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:28,533 [257] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-web stdout | 2025-09-26 08:37:28,533 [250] [DEBUG] [app] Starting request: urn:request:885e361f-b87d-4b02-a24f-38897a7f0c23 (/_storage_proxy_auth) {'X-Forwarded-For': '3.147.184.98'} gunicorn-web stdout | 2025-09-26 08:37:28,534 [250] [DEBUG] [storage.downloadproxy] Got token b'eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODQ3LCJpYXQiOjE3NTg4NzU4NDcsImV4cCI6MTc1ODg3NjQ0Nywic3ViIjoic3RvcmFnZXByb3h5IiwiYWNjZXNzIjpbeyJ0eXBlIjoic3RvcmFnZXByb3h5IiwidXJpIjoicXVheS1kYXRhc3RvcmUtZTI5YzM5OTQtNjJlYi00ZTlmLTk1NTAtYmFhMTFmODc0MDg0L2RhdGFzdG9yYWdlL3JlZ2lzdHJ5L3NoYTI1Ni82ZS82ZTE3NDIyNmVhNjkwY2VkNTUwZTU2NDEyNDlhNDEyY2RiZWZkMmQwOTg3MWYzZTY0YWI1MjEzN2E1NGJhNjA2P0FXU0FjY2Vzc0tleUlkPUtxVUFodjYwQUdsQUREcTBNY0taJlNpZ25hdHVyZT0lMkZHUG9mMk8lMkJacGN4eHB4NkVJRjFnZlRpT0xrJTNEJkV4cGlyZXM9MTc1ODg3NjQ0NyIsImhvc3QiOiJzMy5vcGVuc2hpZnQtc3RvcmFnZS5zdmMuY2x1c3Rlci5sb2NhbDo0NDMiLCJzY2hlbWUiOiJodHRwcyJ9XSwiY29udGV4dCI6e319.GcFBUeHRZ-INecaao6-Bxs4kMglGrzzh5qGkqL3kZa1SQAyfQEEvsCwzXPMR2kVJbuHVxY6jnBAOq0eBp_Y3a2IcNdei_V9NldB_nFOS5S_KlPjKc0Xdu9XuyUUrQ4wBfKxsIkA9nyFqBtw0reHnV7u-tP_n0ml3kEnKLFxmUALhLv6909W_rvqS8eB1sgS52BeLZCmOVXiPyrrhJk_tAARjEOFWOqlpMBGFQNMcMpxYFlsm7LBJ9AqSy0bf2Kr3UxVu6JsNr0M1zL49xmKC1nJkCwLJj4kzxc5hD0p3GP03d0aRKYzTQhefMynN5lk6D33lvWrfc5mgg-xbeimQKg' for storage proxy auth request /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EUTNMQ0pwWVhRaU9qRTNOVGc0TnpVNE5EY3NJbVY0Y0NJNk1UYzFPRGczTmpRME55d2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4MlpTODJaVEUzTkRJeU5tVmhOamt3WTJWa05UVXdaVFUyTkRFeU5EbGhOREV5WTJSaVpXWmtNbVF3T1RnM01XWXpaVFkwWVdJMU1qRXpOMkUxTkdKaE5qQTJQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDBsTWtaSFVHOW1NazhsTWtKYWNHTjRlSEI0TmtWSlJqRm5abFJwVDB4ckpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qUTBOeUlzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5HY0ZCVWVIUlotSU5lY2FhbzYtQnhzNGtNZ2xHcnp6aDVxR2txTDNrWmExU1FBeWZRRUV2c0N3elhQTVIya1ZKYnVIVnhZNmpuQkFPcTBlQnBfWTNhMkljTmRlaV9WOU5sZEJfbkZPUzVTX0tsUGpLYzBYZHU5WHV5VVVyUTR3QmZLeHNJa0E5bnlGcUJ0dzByZUhuVjd1LXRQX24wbWwza0VuS0xGeG1VQUxoTHY2OTA5V19ydnFTOGVCMXNnUzUyQmVMWkNtT1ZYaVB5cnJoSmtfdEFBUmpFT0ZXT3FscE1CR0ZRTk1jTXB4WUZsc203TEJKOUFxU3kwYmYyS3IzVXhWdTZKc05yME0xekw0OXhtS0MxbkprQ3dMSmo0a3p4YzVoRDBwM0dQMDNkMGFSS1l6VFFoZWZNeW5ONWxrNkQzM2x2V3JmYzVtZ2cteGJlaW1RS2c=/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/6e/6e174226ea690ced550e5641249a412cdbefd2d09871f3e64ab52137a54ba606?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=%2FGPof2O%2BZpcxxpx6EIF1gfTiOLk%3D&Expires=1758876447 with parts ['ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EUTNMQ0pwWVhRaU9qRTNOVGc0TnpVNE5EY3NJbVY0Y0NJNk1UYzFPRGczTmpRME55d2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4MlpTODJaVEUzTkRJeU5tVmhOamt3WTJWa05UVXdaVFUyTkRFeU5EbGhOREV5WTJSaVpXWmtNbVF3T1RnM01XWXpaVFkwWVdJMU1qRXpOMkUxTkdKaE5qQTJQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDBsTWtaSFVHOW1NazhsTWtKYWNHTjRlSEI0TmtWSlJqRm5abFJwVDB4ckpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qUTBOeUlzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5HY0ZCVWVIUlotSU5lY2FhbzYtQnhzNGtNZ2xHcnp6aDVxR2txTDNrWmExU1FBeWZRRUV2c0N3elhQTVIya1ZKYnVIVnhZNmpuQkFPcTBlQnBfWTNhMkljTmRlaV9WOU5sZEJfbkZPUzVTX0tsUGpLYzBYZHU5WHV5VVVyUTR3QmZLeHNJa0E5bnlGcUJ0dzByZUhuVjd1LXRQX24wbWwza0VuS0xGeG1VQUxoTHY2OTA5V19ydnFTOGVCMXNnUzUyQmVMWkNtT1ZYaVB5cnJoSmtfdEFBUmpFT0ZXT3FscE1CR0ZRTk1jTXB4WUZsc203TEJKOUFxU3kwYmYyS3IzVXhWdTZKc05yME0xekw0OXhtS0MxbkprQ3dMSmo0a3p4YzVoRDBwM0dQMDNkMGFSS1l6VFFoZWZNeW5ONWxrNkQzM2x2V3JmYzVtZ2cteGJlaW1RS2c=', 'https', 's3.openshift-storage.svc.cluster.local:443', 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/6e/6e174226ea690ced550e5641249a412cdbefd2d09871f3e64ab52137a54ba606?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=%2FGPof2O%2BZpcxxpx6EIF1gfTiOLk%3D&Expires=1758876447'] gunicorn-registry stdout | 2025-09-26 08:37:28,534 [257] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-web stdout | 2025-09-26 08:37:28,535 [250] [DEBUG] [app] Ending request: urn:request:885e361f-b87d-4b02-a24f-38897a7f0c23 (/_storage_proxy_auth) {'endpoint': '_storage_proxy_auth', 'request_id': 'urn:request:885e361f-b87d-4b02-a24f-38897a7f0c23', 'remote_addr': '3.147.184.98', 'http_method': 'GET', 'original_url': 'https://web_app_server/_storage_proxy_auth', 'path': '/_storage_proxy_auth', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'Go-http-client/1.1'} gunicorn-web stdout | 2025-09-26 08:37:28,536 [250] [INFO] [gunicorn.access] 3.147.184.98 - - [26/Sep/2025:08:37:28 +0000] "GET /_storage_proxy_auth HTTP/1.0" 200 2 "-" "Go-http-client/1.1" securityscanningnotificationworker stdout | 2025-09-26 08:37:28,587 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:37:28,587 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:10.584403+00:00 (in 41.996856 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:37:28,587 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:28 GMT)" (scheduled at 2025-09-26 08:37:28.587130+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:37:28,587 [82] [DEBUG] [workers.queueworker] Running watchdog. securityscanningnotificationworker stdout | 2025-09-26 08:37:28,587 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:28 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:37:28,609 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa?uploadId=68d650c8d73ec60008f9359a&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:28,610 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9mj9-blcqsy-d1', 'x-amz-id-2': 'mg0l9mj9-blcqsy-d1', 'ETag': '"da86a5f39a9b0f7bc9b379966a964f2d"', 'Date': 'Fri, 26 Sep 2025 08:37:28 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:28,610 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:28,610 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,610 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:28,610 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:28,610 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9mj9-blcqsy-d1', 'HostId': 'mg0l9mj9-blcqsy-d1', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9mj9-blcqsy-d1', 'x-amz-id-2': 'mg0l9mj9-blcqsy-d1', 'etag': '"da86a5f39a9b0f7bc9b379966a964f2d"', 'date': 'Fri, 26 Sep 2025 08:37:28 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"da86a5f39a9b0f7bc9b379966a964f2d"'} gunicorn-registry stdout | 2025-09-26 08:37:28,610 [257] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa', 'UploadId': '68d650c8d73ec60008f9359a', 'MultipartUpload': {'Parts': [{'ETag': '"da86a5f39a9b0f7bc9b379966a964f2d"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:28,610 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,610 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,610 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,610 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:28,610 [257] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,610 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,610 [257] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:28,610 [257] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:28,610 [257] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:28,610 [257] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:28,610 [257] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:28,611 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,611 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,611 [257] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,611 [257] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa', 'query_string': {'uploadId': '68d650c8d73ec60008f9359a'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"da86a5f39a9b0f7bc9b379966a964f2d"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa?uploadId=68d650c8d73ec60008f9359a', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa', 'UploadId': '68d650c8d73ec60008f9359a', 'MultipartUpload': {'Parts': [{'ETag': '"da86a5f39a9b0f7bc9b379966a964f2d"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:28,611 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:28,611 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:28,611 [257] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,611 [257] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,611 [257] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:28,611 [257] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa gunicorn-registry stdout | uploadId=68d650c8d73ec60008f9359a gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:affbc723478bdd850dad49af94c9e205661701fc1d8666eaae81355da87e15a9 gunicorn-registry stdout | x-amz-date:20250926T083728Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | affbc723478bdd850dad49af94c9e205661701fc1d8666eaae81355da87e15a9 gunicorn-registry stdout | 2025-09-26 08:37:28,611 [257] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083728Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | f07da80074ba04b3a4be9ab105f238f7cdb32536521ff2c69ccd467de5467dfa gunicorn-registry stdout | 2025-09-26 08:37:28,612 [257] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 14a8b747ba5d40e560030db872f9d28edaf1e6de860f86422cb44064b0dee5e6 gunicorn-registry stdout | 2025-09-26 08:37:28,612 [257] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,612 [257] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:28,612 [257] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:28,627 [257] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa?uploadId=68d650c8d73ec60008f9359a HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:28,627 [257] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9mlh-cwweav-279', 'x-amz-id-2': 'mg0l9mlh-cwweav-279', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:28 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:28,627 [257] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa"6f74568df3b1ff1f878b28ec4aa6eb86-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa?uploadId=68d650c8d73ec60008f9359a' gunicorn-registry stdout | 2025-09-26 08:37:28,627 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,627 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:28,627 [257] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:28,627 [257] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:28,627 [257] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9mlh-cwweav-279', 'HostId': 'mg0l9mlh-cwweav-279', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9mlh-cwweav-279', 'x-amz-id-2': 'mg0l9mlh-cwweav-279', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:28 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa?uploadId=68d650c8d73ec60008f9359a', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa', 'ETag': '"6f74568df3b1ff1f878b28ec4aa6eb86-1"'} gunicorn-registry stdout | 2025-09-26 08:37:28,628 [257] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:28,628 [257] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:28,628 [257] [DEBUG] [data.registry_model.blobuploader] Uploaded 584 bytes to blob d725782c-319a-4c16-bbc5-5870f4329847 took 0.10941076278686523 seconds gunicorn-registry stdout | 2025-09-26 08:37:28,629 [257] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['d725782c-319a-4c16-bbc5-5870f4329847', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,631 [257] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, 'd725782c-319a-4c16-bbc5-5870f4329847', 584, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwZWZjYiJdfX03MDFhMzNkZjM4YjJjMTczZmY3ODk0ODgzYjE1OTgxNTY4ZjcxMmE2ODhkNDFlMThiM2E0MDViZggAAAAAAAAAABIAAAAAAADukfQAg18AbwQi7En9wyyimByTCQFpd7x0ilMtO1OIHJRiLg==', 9, '{"chunks": [["uploads/4a9d23b8-b192-44cd-bea1-515a2a0247aa", 0, 584]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 37, 28, 463725), None, None, 72]) gunicorn-registry stdout | 2025-09-26 08:37:28,632 [257] [DEBUG] [app] Ending request: urn:request:8a84695c-3951-4605-a5f9-644194de07d8 (/v2/testorg2/alpine/blobs/uploads/d725782c-319a-4c16-bbc5-5870f4329847) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:8a84695c-3951-4605-a5f9-644194de07d8', 'remote_addr': '10.129.4.11', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/d725782c-319a-4c16-bbc5-5870f4329847', 'path': '/v2/testorg2/alpine/blobs/uploads/d725782c-319a-4c16-bbc5-5870f4329847', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:28,633 [257] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:28,633 [257] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:28,633 [257] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:28 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/d725782c-319a-4c16-bbc5-5870f4329847 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:28 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/d725782c-319a-4c16-bbc5-5870f4329847 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.127 2360 0.126) gunicorn-registry stdout | 2025-09-26 08:37:28,978 [251] [DEBUG] [app] Starting request: urn:request:aeb8cdd1-5fa6-4e32-92f3-823fe9bd8aae (/v2/testorg2/alpine/manifests/sha256:e9025aa787330c0477c030dc7b7f134acadaf2c4a9dd9244ee43e575ffc92fa9) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:28,979 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'manifest_ref': 'sha256:e9025aa787330c0477c030dc7b7f134acadaf2c4a9dd9244ee43e575ffc92fa9', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:28,979 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:28,979 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:28,980 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:28,980 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:28,980 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:28,980 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:28,980 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:28,981 [251] [DEBUG] [data.cache.cache_key] Loading repository lookup from cache_key: repository_lookup_testorg2_alpine gunicorn-registry stdout | 2025-09-26 08:37:28,981 [251] [DEBUG] [data.cache.impl] Checking cache for key repository_lookup_testorg2_alpine gunicorn-registry stdout | 2025-09-26 08:37:28,982 [251] [DEBUG] [data.cache.impl] Found result in cache for key repository_lookup_testorg2_alpine: {'id': 3, 'visibility': {'id': 2, 'name': 'private'}, 'kind': {'id': 1, 'name': 'image'}, 'state': 0, 'namespace_user': {'stripe_id': None}} gunicorn-registry stdout | 2025-09-26 08:37:28,983 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:e9025aa787330c0477c030dc7b7f134acadaf2c4a9dd9244ee43e575ffc92fa9', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,984 [251] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL (SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "uploadedblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1")', [3, 'sha256:85014141f8b45859108c04c9cef9d6fdac78bc56732245f93b7cc03ed39ab377', 1, 3, 'sha256:b762f678859bfa5c3948b5f1b04959aa43c8aba88e2389e281413d303d62a7e3', 1]) gunicorn-registry stdout | 2025-09-26 08:37:28,986 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."digest" = %s) AND ("t1"."repository_id" = %s)) LIMIT %s OFFSET %s', ['sha256:e9025aa787330c0477c030dc7b7f134acadaf2c4a9dd9244ee43e575ffc92fa9', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,987 [251] [DEBUG] [peewee] ('INSERT INTO "manifest" ("repository_id", "digest", "media_type_id", "manifest_bytes", "config_media_type", "layers_compressed_size", "subject", "subject_backfilled", "artifact_type", "artifact_type_backfilled") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifest"."id"', [3, 'sha256:e9025aa787330c0477c030dc7b7f134acadaf2c4a9dd9244ee43e575ffc92fa9', 18, '{\n "schemaVersion": 2,\n "mediaType": "application/vnd.oci.image.manifest.v1+json",\n "config": {\n "mediaType": "application/vnd.oci.image.config.v1+json",\n "digest": "sha256:85014141f8b45859108c04c9cef9d6fdac78bc56732245f93b7cc03ed39ab377",\n "size": 584\n },\n "layers": [\n {\n "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",\n "digest": "sha256:b762f678859bfa5c3948b5f1b04959aa43c8aba88e2389e281413d303d62a7e3",\n "size": 3727111\n }\n ],\n "annotations": {\n "com.docker.official-images.bashbrew.arch": "ppc64le",\n "org.opencontainers.image.base.name": "scratch",\n "org.opencontainers.image.created": "2025-07-15T11:01:16Z",\n "org.opencontainers.image.revision": "01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e",\n "org.opencontainers.image.source": "https://github.com/alpinelinux/docker-alpine.git#01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e:ppc64le",\n "org.opencontainers.image.url": "https://hub.docker.com/_/alpine",\n "org.opencontainers.image.version": "3.22.1"\n }\n}', 'application/vnd.oci.image.config.v1+json', 3727111, None, True, None, True]) gunicorn-registry stdout | 2025-09-26 08:37:28,988 [251] [DEBUG] [peewee] ('INSERT INTO "manifestblob" ("repository_id", "manifest_id", "blob_id") VALUES (%s, %s, %s), (%s, %s, %s) RETURNING "manifestblob"."id"', [3, 29, 72, 3, 29, 73]) gunicorn-registry stdout | 2025-09-26 08:37:28,989 [251] [DEBUG] [peewee] ('SELECT "t1"."namespace_user_id" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,990 [251] [DEBUG] [peewee] ('SELECT 1 FROM "user" AS "t1" WHERE ((("t1"."id" = %s) AND "t1"."enabled") AND NOT "t1"."robot") LIMIT %s', [4, 1]) gunicorn-registry stdout | 2025-09-26 08:37:28,990 [251] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [4, 73, 29, 1]) gunicorn-registry stdout | 2025-09-26 08:37:28,991 [251] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [4, 72, 29, 1]) gunicorn-registry stdout | 2025-09-26 08:37:28,992 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,992 [251] [INFO] [data.model.quota] updating namespace size for manifest 29 in namespace 4, QuotaOperation.ADD 3727695 nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:28 +0000] "GET /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EUTNMQ0pwWVhRaU9qRTNOVGc0TnpVNE5EY3NJbVY0Y0NJNk1UYzFPRGczTmpRME55d2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4MlpTODJaVEUzTkRJeU5tVmhOamt3WTJWa05UVXdaVFUyTkRFeU5EbGhOREV5WTJSaVpXWmtNbVF3T1RnM01XWXpaVFkwWVdJMU1qRXpOMkUxTkdKaE5qQTJQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDBsTWtaSFVHOW1NazhsTWtKYWNHTjRlSEI0TmtWSlJqRm5abFJwVDB4ckpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qUTBOeUlzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5HY0ZCVWVIUlotSU5lY2FhbzYtQnhzNGtNZ2xHcnp6aDVxR2txTDNrWmExU1FBeWZRRUV2c0N3elhQTVIya1ZKYnVIVnhZNmpuQkFPcTBlQnBfWTNhMkljTmRlaV9WOU5sZEJfbkZPUzVTX0tsUGpLYzBYZHU5WHV5VVVyUTR3QmZLeHNJa0E5bnlGcUJ0dzByZUhuVjd1LXRQX24wbWwza0VuS0xGeG1VQUxoTHY2OTA5V19ydnFTOGVCMXNnUzUyQmVMWkNtT1ZYaVB5cnJoSmtfdEFBUmpFT0ZXT3FscE1CR0ZRTk1jTXB4WUZsc203TEJKOUFxU3kwYmYyS3IzVXhWdTZKc05yME0xekw0OXhtS0MxbkprQ3dMSmo0a3p4YzVoRDBwM0dQMDNkMGFSS1l6VFFoZWZNeW5ONWxrNkQzM2x2V3JmYzVtZ2cteGJlaW1RS2c=/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/6e/6e174226ea690ced550e5641249a412cdbefd2d09871f3e64ab52137a54ba606?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=%2FGPof2O%2BZpcxxpx6EIF1gfTiOLk%3D&Expires=1758876447 HTTP/1.1" 200 4120148 "-" "Go-http-client/1.1" (0.459 2415 0.455) gunicorn-registry stdout | 2025-09-26 08:37:28,992 [251] [DEBUG] [peewee] ('UPDATE "quotanamespacesize" SET "size_bytes" = ("quotanamespacesize"."size_bytes" + %s) WHERE ("quotanamespacesize"."namespace_user_id" = %s)', [3727695, 4]) gunicorn-registry stdout | 2025-09-26 08:37:28,993 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotarepositorysize" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,993 [251] [INFO] [data.model.quota] updating repository size for manifest 29 in repository 3, QuotaOperation.ADD 3727695 gunicorn-registry stdout | 2025-09-26 08:37:28,993 [251] [DEBUG] [peewee] ('UPDATE "quotarepositorysize" SET "size_bytes" = ("quotarepositorysize"."size_bytes" + %s) WHERE ("quotarepositorysize"."repository_id" = %s)', [3727695, 3]) gunicorn-registry stdout | 2025-09-26 08:37:28,994 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [29, None, 1758879448994, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,995 [251] [DEBUG] [peewee] ('INSERT INTO "tag" ("name", "repository_id", "manifest_id", "lifetime_start_ms", "lifetime_end_ms", "immutable", "hidden", "reversion", "tag_kind_id") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "tag"."id"', ['$temp-64d64377-4f5e-4c45-a899-b19643eb6fe1', 3, 29, 1758875848994, 1758879448994, False, True, False, 1]) gunicorn-registry stdout | 2025-09-26 08:37:28,998 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:85014141f8b45859108c04c9cef9d6fdac78bc56732245f93b7cc03ed39ab377', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:28,999 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['81ec74c5-ebe4-4e1b-9554-d26a630f31ff']) gunicorn-registry stdout | 2025-09-26 08:37:28,999 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:29,000 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:29,001 [251] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/85/85014141f8b45859108c04c9cef9d6fdac78bc56732245f93b7cc03ed39ab377'} gunicorn-registry stdout | 2025-09-26 08:37:29,001 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,001 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,001 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,001 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,001 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,001 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,001 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,001 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:29,001 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:29,001 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:29,001 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:29,001 [251] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,001 [251] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,001 [251] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,001 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/85/85014141f8b45859108c04c9cef9d6fdac78bc56732245f93b7cc03ed39ab377', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/85/85014141f8b45859108c04c9cef9d6fdac78bc56732245f93b7cc03ed39ab377', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/85/85014141f8b45859108c04c9cef9d6fdac78bc56732245f93b7cc03ed39ab377', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/85/85014141f8b45859108c04c9cef9d6fdac78bc56732245f93b7cc03ed39ab377'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:29,002 [251] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,002 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,002 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,002 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,002 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:29,002 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/85/85014141f8b45859108c04c9cef9d6fdac78bc56732245f93b7cc03ed39ab377 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083729Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:29,002 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083729Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 4e8baab9a05057584ec3029904c313e617e8cea76613d751ce927d06e50726dc gunicorn-registry stdout | 2025-09-26 08:37:29,002 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | c1e9364842dd521a3f179a62021eabb1873d551736fd93e775e8629ca54d0084 gunicorn-registry stdout | 2025-09-26 08:37:29,002 [251] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,002 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:29,002 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:29,062 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/85/85014141f8b45859108c04c9cef9d6fdac78bc56732245f93b7cc03ed39ab377 HTTP/1.1" 200 584 gunicorn-registry stdout | 2025-09-26 08:37:29,062 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9mwb-2tw859-12ax', 'x-amz-id-2': 'mg0l9mwb-2tw859-12ax', 'ETag': '"6f74568df3b1ff1f878b28ec4aa6eb86-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:28 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '584', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:29 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:29,063 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:29,063 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,063 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:29,063 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,063 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9mwb-2tw859-12ax', 'HostId': 'mg0l9mwb-2tw859-12ax', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9mwb-2tw859-12ax', 'x-amz-id-2': 'mg0l9mwb-2tw859-12ax', 'etag': '"6f74568df3b1ff1f878b28ec4aa6eb86-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:28 GMT', 'content-type': 'application/octet-stream', 'content-length': '584', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:29 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 28, tzinfo=tzutc()), 'ContentLength': 584, 'ETag': '"6f74568df3b1ff1f878b28ec4aa6eb86-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:29,065 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [29, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,066 [251] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['66ab5c63-51f3-476c-9d5f-a4168ac9d0f3', 'com.docker.official-images.bashbrew.arch', 'ppc64le', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:29,067 [251] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 29, 92]) gunicorn-registry stdout | 2025-09-26 08:37:29,069 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [29, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,070 [251] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['c9d6e421-79c3-4cd2-88b5-40427c235dc9', 'org.opencontainers.image.base.name', 'scratch', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:29,070 [251] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 29, 93]) gunicorn-registry stdout | 2025-09-26 08:37:29,072 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [29, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,073 [251] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['81771f6e-b810-4dd3-8ac6-5f18fd6044a1', 'org.opencontainers.image.created', '2025-07-15T11:01:16Z', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:29,074 [251] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 29, 94]) gunicorn-registry stdout | 2025-09-26 08:37:29,076 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [29, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,077 [251] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['ae438dc9-383a-49c8-b8b0-04eeb3320bde', 'org.opencontainers.image.revision', '01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:29,078 [251] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 29, 95]) gunicorn-registry stdout | 2025-09-26 08:37:29,080 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [29, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,081 [251] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['99543936-f140-4500-b68f-0b05e5e45048', 'org.opencontainers.image.source', 'https://github.com/alpinelinux/docker-alpine.git#01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e:ppc64le', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:29,082 [251] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 29, 96]) gunicorn-registry stdout | 2025-09-26 08:37:29,084 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [29, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,085 [251] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['9031e28d-dd62-4321-9336-b2093452957d', 'org.opencontainers.image.url', 'https://hub.docker.com/_/alpine', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:29,086 [251] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 29, 97]) gunicorn-registry stdout | 2025-09-26 08:37:29,088 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [29, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,089 [251] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['167b40db-748b-4a16-b801-c4edc3b89414', 'org.opencontainers.image.version', '3.22.1', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:29,090 [251] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 29, 98]) gunicorn-registry stdout | 2025-09-26 08:37:29,092 [251] [DEBUG] [app] Ending request: urn:request:aeb8cdd1-5fa6-4e32-92f3-823fe9bd8aae (/v2/testorg2/alpine/manifests/sha256:e9025aa787330c0477c030dc7b7f134acadaf2c4a9dd9244ee43e575ffc92fa9) {'endpoint': 'v2.write_manifest_by_digest', 'request_id': 'urn:request:aeb8cdd1-5fa6-4e32-92f3-823fe9bd8aae', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/manifests/sha256:e9025aa787330c0477c030dc7b7f134acadaf2c4a9dd9244ee43e575ffc92fa9', 'path': '/v2/testorg2/alpine/manifests/sha256:e9025aa787330c0477c030dc7b7f134acadaf2c4a9dd9244ee43e575ffc92fa9', 'parameters': {}, 'json_body': {'schemaVersion': 2, 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'config': {'mediaType': 'application/vnd.oci.image.config.v1+json', 'digest': 'sha256:85014141f8b45859108c04c9cef9d6fdac78bc56732245f93b7cc03ed39ab377', 'size': 584}, 'layers': [{'mediaType': 'application/vnd.oci.image.layer.v1.tar+gzip', 'digest': 'sha256:b762f678859bfa5c3948b5f1b04959aa43c8aba88e2389e281413d303d62a7e3', 'size': 3727111}], 'annotations': {'com.docker.official-images.bashbrew.arch': 'ppc64le', 'org.opencontainers.image.base.name': 'scratch', 'org.opencontainers.image.created': '2025-07-15T11:01:16Z', 'org.opencontainers.image.revision': '01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e', 'org.opencontainers.image.source': 'https://github.com/alpinelinux/docker-alpine.git#01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e:ppc64le', 'org.opencontainers.image.url': 'https://hub.docker.com/_/alpine', 'org.opencontainers.image.version': '3.22.1'}}, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:29,092 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:29,092 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:29,093 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:29 +0000] "PUT /v2/testorg2/alpine/manifests/sha256:e9025aa787330c0477c030dc7b7f134acadaf2c4a9dd9244ee43e575ffc92fa9 HTTP/1.1" 201 2 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:29 +0000] "PUT /v2/testorg2/alpine/manifests/sha256:e9025aa787330c0477c030dc7b7f134acadaf2c4a9dd9244ee43e575ffc92fa9 HTTP/1.1" 201 2 "-" "skopeo/1.14.5" (0.116 2849 0.116) gunicorn-registry stdout | 2025-09-26 08:37:29,261 [251] [DEBUG] [app] Starting request: urn:request:7ad38745-0a2c-4757-b890-1a0aaa6936ab (/v2/testorg2/alpine/blobs/sha256:af8ba8ed525578969be4e8587391aeae87258b03215037ba7cf7fd48e053a5e1) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:29,261 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:af8ba8ed525578969be4e8587391aeae87258b03215037ba7cf7fd48e053a5e1', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:29,261 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:29,261 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:29,262 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:29,262 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:29,262 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:29,262 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:29,262 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:29,263 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,264 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,265 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:29,265 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:af8ba8ed525578969be4e8587391aeae87258b03215037ba7cf7fd48e053a5e1_2 gunicorn-registry stdout | 2025-09-26 08:37:29,265 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:af8ba8ed525578969be4e8587391aeae87258b03215037ba7cf7fd48e053a5e1_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:29,266 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,268 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,268 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,269 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:af8ba8ed525578969be4e8587391aeae87258b03215037ba7cf7fd48e053a5e1', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,270 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:af8ba8ed525578969be4e8587391aeae87258b03215037ba7cf7fd48e053a5e1', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,272 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:af8ba8ed525578969be4e8587391aeae87258b03215037ba7cf7fd48e053a5e1_2: None gunicorn-registry stdout | 2025-09-26 08:37:29,272 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:af8ba8ed525578969be4e8587391aeae87258b03215037ba7cf7fd48e053a5e1_2: None gunicorn-registry stdout | 2025-09-26 08:37:29,272 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:29,272 [251] [DEBUG] [app] Ending request: urn:request:7ad38745-0a2c-4757-b890-1a0aaa6936ab (/v2/testorg2/alpine/blobs/sha256:af8ba8ed525578969be4e8587391aeae87258b03215037ba7cf7fd48e053a5e1) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:7ad38745-0a2c-4757-b890-1a0aaa6936ab', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:af8ba8ed525578969be4e8587391aeae87258b03215037ba7cf7fd48e053a5e1', 'path': '/v2/testorg2/alpine/blobs/sha256:af8ba8ed525578969be4e8587391aeae87258b03215037ba7cf7fd48e053a5e1', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:29,272 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:29,272 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:29 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:af8ba8ed525578969be4e8587391aeae87258b03215037ba7cf7fd48e053a5e1 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.012 1718 0.012) gunicorn-registry stdout | 2025-09-26 08:37:29,272 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:29 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:af8ba8ed525578969be4e8587391aeae87258b03215037ba7cf7fd48e053a5e1 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" gunicorn-registry stdout | 2025-09-26 08:37:29,464 [251] [DEBUG] [app] Starting request: urn:request:f024c896-703a-4e59-9fc3-79a90d2bce2b (/v2/testorg2/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:29,464 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:29,464 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:29,464 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:29,465 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:29,465 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:29,465 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:29,465 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:29,465 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:29,466 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,468 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,468 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,469 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,470 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,472 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,473 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:29,474 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,474 [251] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [3, '0a7874ae-383a-41b9-9b8d-ca3b1ba8bbb0', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 37, 29, 474517)]) gunicorn-registry stdout | 2025-09-26 08:37:29,476 [251] [DEBUG] [app] Ending request: urn:request:f024c896-703a-4e59-9fc3-79a90d2bce2b (/v2/testorg2/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:f024c896-703a-4e59-9fc3-79a90d2bce2b', 'remote_addr': '10.131.2.20', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/', 'path': '/v2/testorg2/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:29,476 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:29,476 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:29 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.014 1697 0.014) gunicorn-registry stdout | 2025-09-26 08:37:29,477 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:29 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" gunicorn-registry stdout | 2025-09-26 08:37:29,518 [258] [DEBUG] [app] Starting request: urn:request:fd936e26-a45f-4c48-bc06-5fb48181c445 (/v2/testorg2/alpine/blobs/uploads/0a7874ae-383a-41b9-9b8d-ca3b1ba8bbb0) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:29,519 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '0a7874ae-383a-41b9-9b8d-ca3b1ba8bbb0', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:29,519 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:29,519 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:29,520 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:29,520 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:29,520 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:29,520 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:29,520 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:29,521 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,523 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,524 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,525 [258] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,526 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,527 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,528 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,529 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:29,530 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['0a7874ae-383a-41b9-9b8d-ca3b1ba8bbb0', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,531 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:29,531 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:29,531 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:29,532 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:29,532 [258] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:29,532 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,532 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,532 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,533 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,533 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,533 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,533 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,533 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,533 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:29,533 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:29,533 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:29,533 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:29,534 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,534 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,534 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,534 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:29,534 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,534 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,534 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,534 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,534 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:29,535 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083729Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:29,535 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083729Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | b05dca21e58dcfbe0dd3fc4d0957be7382336a7850267d33515495b96d4c22e8 gunicorn-registry stdout | 2025-09-26 08:37:29,535 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | d67c64d84561f3f023d2b93874600af451055c886e8d05bec32a64d8e48e80c0 gunicorn-registry stdout | 2025-09-26 08:37:29,535 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,535 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:29,535 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:29,542 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:29,542 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9nb5-bnd56l-id5', 'x-amz-id-2': 'mg0l9nb5-bnd56l-id5', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:29 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:29,542 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea68d650c9d73ec60008f935a3' gunicorn-registry stdout | 2025-09-26 08:37:29,543 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,543 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:29,543 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,543 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9nb5-bnd56l-id5', 'HostId': 'mg0l9nb5-bnd56l-id5', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9nb5-bnd56l-id5', 'x-amz-id-2': 'mg0l9nb5-bnd56l-id5', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:29 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea', 'UploadId': '68d650c9d73ec60008f935a3'} gunicorn-registry stdout | 2025-09-26 08:37:29,543 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:29,544 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:29,544 [258] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:29,544 [258] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea', 'UploadId': '68d650c9d73ec60008f935a3', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b8828270>, 'ContentLength': 5718} gunicorn-registry stdout | 2025-09-26 08:37:29,544 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,544 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,545 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,545 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,545 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,545 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,545 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,545 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,545 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:29,545 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:29,545 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:29,545 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:29,545 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,546 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,546 [258] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:29,546 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,546 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,546 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea', 'query_string': {'uploadId': '68d650c9d73ec60008f935a3', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '5718', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'xKho4aQ2qamhK7bIGyt5iA==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b8828270>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea?uploadId=68d650c9d73ec60008f935a3&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea', 'UploadId': '68d650c9d73ec60008f935a3', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b8828270>, 'ContentLength': 5718}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:29,546 [258] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,546 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,546 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,546 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,547 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:29,547 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea gunicorn-registry stdout | partNumber=1&uploadId=68d650c9d73ec60008f935a3 gunicorn-registry stdout | content-length:5718 gunicorn-registry stdout | content-md5:xKho4aQ2qamhK7bIGyt5iA== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083729Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:29,547 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083729Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | e557a202761b8756147cfa5887406eb7dc82a4bfbdfe5dbee9adc0c6b6924ceb gunicorn-registry stdout | 2025-09-26 08:37:29,547 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 8ef825f8bc5f149aa0c03b891d6b6ef8d5fbd2e134944a14618349dc14eff18c gunicorn-registry stdout | 2025-09-26 08:37:29,547 [258] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,547 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:29,547 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:29,548 [258] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:37:29,549 [258] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:37:29,635 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea?uploadId=68d650c9d73ec60008f935a3&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:29,635 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9nbh-bulfmo-1dn5', 'x-amz-id-2': 'mg0l9nbh-bulfmo-1dn5', 'ETag': '"c4a868e1a436a9a9a12bb6c81b2b7988"', 'Date': 'Fri, 26 Sep 2025 08:37:29 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:29,636 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:29,636 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,636 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:29,636 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,636 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9nbh-bulfmo-1dn5', 'HostId': 'mg0l9nbh-bulfmo-1dn5', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9nbh-bulfmo-1dn5', 'x-amz-id-2': 'mg0l9nbh-bulfmo-1dn5', 'etag': '"c4a868e1a436a9a9a12bb6c81b2b7988"', 'date': 'Fri, 26 Sep 2025 08:37:29 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"c4a868e1a436a9a9a12bb6c81b2b7988"'} gunicorn-registry stdout | 2025-09-26 08:37:29,636 [258] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea', 'UploadId': '68d650c9d73ec60008f935a3', 'MultipartUpload': {'Parts': [{'ETag': '"c4a868e1a436a9a9a12bb6c81b2b7988"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:29,636 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,636 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,636 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,636 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,636 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,636 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,637 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,637 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:29,637 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:29,637 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:29,637 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:29,637 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,637 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,637 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,637 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea', 'query_string': {'uploadId': '68d650c9d73ec60008f935a3'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"c4a868e1a436a9a9a12bb6c81b2b7988"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea?uploadId=68d650c9d73ec60008f935a3', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea', 'UploadId': '68d650c9d73ec60008f935a3', 'MultipartUpload': {'Parts': [{'ETag': '"c4a868e1a436a9a9a12bb6c81b2b7988"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:29,638 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,638 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,638 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,638 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,638 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:29,638 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea gunicorn-registry stdout | uploadId=68d650c9d73ec60008f935a3 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:d043b0cef89385edfcac5bd00c0958699ccea96bdeb0ac9978f376ea8eeed8c7 gunicorn-registry stdout | x-amz-date:20250926T083729Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | d043b0cef89385edfcac5bd00c0958699ccea96bdeb0ac9978f376ea8eeed8c7 gunicorn-registry stdout | 2025-09-26 08:37:29,638 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083729Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 2d1928252018c34a3874e4d258319c27b04a3981516224f772b23ba12b48c00e gunicorn-registry stdout | 2025-09-26 08:37:29,638 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | ac8943f62c616a9717612cb8f455272f4d78d3a2bbb98de7b9ff0f404506b69d gunicorn-registry stdout | 2025-09-26 08:37:29,638 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,638 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:29,639 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:29,658 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea?uploadId=68d650c9d73ec60008f935a3 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:29,658 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ne0-dct8sq-wg8', 'x-amz-id-2': 'mg0l9ne0-dct8sq-wg8', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:29 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:29,658 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea"2e0ea2c750298f161a0797b440c268db-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea?uploadId=68d650c9d73ec60008f935a3' gunicorn-registry stdout | 2025-09-26 08:37:29,659 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,659 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,659 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:29,659 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,659 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9ne0-dct8sq-wg8', 'HostId': 'mg0l9ne0-dct8sq-wg8', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ne0-dct8sq-wg8', 'x-amz-id-2': 'mg0l9ne0-dct8sq-wg8', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:29 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea?uploadId=68d650c9d73ec60008f935a3', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea', 'ETag': '"2e0ea2c750298f161a0797b440c268db-1"'} gunicorn-registry stdout | 2025-09-26 08:37:29,659 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:29,660 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:29,660 [258] [DEBUG] [data.registry_model.blobuploader] Uploaded 5718 bytes to blob 0a7874ae-383a-41b9-9b8d-ca3b1ba8bbb0 took 0.12965917587280273 seconds gunicorn-registry stdout | 2025-09-26 08:37:29,661 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['0a7874ae-383a-41b9-9b8d-ca3b1ba8bbb0', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,663 [258] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '0a7874ae-383a-41b9-9b8d-ca3b1ba8bbb0', 5718, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwdEB2MSNoZXJtZXRpYyI6dHJ1ZX19fTcxMTF9XV19fSwiaHR0cHM6Ly9tb2J5cHJvamVjdC5vcmcvYnVpbGRraRYAAAAAAAAAALIAAAAAAABycvBm0WRSEq30wKpibMVPlCe9XYi4GL8xRfbh7L7i+5RiLg==', 9, '{"chunks": [["uploads/ca5e57f0-ce70-4477-9b47-72f411eaa0ea", 0, 5718]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 37, 29, 474517), None, None, 73]) gunicorn-registry stdout | 2025-09-26 08:37:29,665 [258] [DEBUG] [app] Ending request: urn:request:fd936e26-a45f-4c48-bc06-5fb48181c445 (/v2/testorg2/alpine/blobs/uploads/0a7874ae-383a-41b9-9b8d-ca3b1ba8bbb0) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:fd936e26-a45f-4c48-bc06-5fb48181c445', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/0a7874ae-383a-41b9-9b8d-ca3b1ba8bbb0', 'path': '/v2/testorg2/alpine/blobs/uploads/0a7874ae-383a-41b9-9b8d-ca3b1ba8bbb0', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:29,665 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:29,665 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:29,666 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:29 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/0a7874ae-383a-41b9-9b8d-ca3b1ba8bbb0 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:29 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/0a7874ae-383a-41b9-9b8d-ca3b1ba8bbb0 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.149 7495 0.148) gunicorn-registry stdout | 2025-09-26 08:37:29,784 [258] [DEBUG] [app] Starting request: urn:request:76474355-d21e-4f60-a5f1-f2fbb516740c (/v2/testorg2/alpine/blobs/uploads/4c7ac7ce-4e78-418e-8592-2c26ce21b741) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:29,784 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '4c7ac7ce-4e78-418e-8592-2c26ce21b741', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:29,785 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:29,785 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:29,786 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:29,786 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:29,786 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:29,786 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:29,786 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:29,788 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,789 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,790 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,791 [258] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,792 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,794 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,795 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,795 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:29,797 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['4c7ac7ce-4e78-418e-8592-2c26ce21b741', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,797 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:29,797 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:29,798 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:29,799 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:29,799 [258] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/ae342ead-5862-41a7-bb11-2d4f368881bf', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:29,799 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,799 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,799 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,800 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,800 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,800 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,800 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,800 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,800 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:29,800 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:29,800 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:29,800 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:29,800 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,800 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,800 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,800 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/ae342ead-5862-41a7-bb11-2d4f368881bf?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ae342ead-5862-41a7-bb11-2d4f368881bf', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ae342ead-5862-41a7-bb11-2d4f368881bf?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/ae342ead-5862-41a7-bb11-2d4f368881bf', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:29,801 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,801 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,801 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,801 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,801 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:29,801 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ae342ead-5862-41a7-bb11-2d4f368881bf gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083729Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:29,801 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083729Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 87bdda87301fd0b552a4740017b4295cd43c1e50d3af6196cb7a9472c0766cbe gunicorn-registry stdout | 2025-09-26 08:37:29,801 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 3b08f641fa0569397dc905c431f09e763f492fc314e580647492aa21daa2d654 gunicorn-registry stdout | 2025-09-26 08:37:29,801 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,802 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:29,802 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:29,808 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ae342ead-5862-41a7-bb11-2d4f368881bf?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:29,808 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9nik-g2cqam-qqj', 'x-amz-id-2': 'mg0l9nik-g2cqam-qqj', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:29 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:29,809 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/ae342ead-5862-41a7-bb11-2d4f368881bf68d650c9d73ec60008f935b0' gunicorn-registry stdout | 2025-09-26 08:37:29,809 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,809 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:29,809 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,809 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9nik-g2cqam-qqj', 'HostId': 'mg0l9nik-g2cqam-qqj', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9nik-g2cqam-qqj', 'x-amz-id-2': 'mg0l9nik-g2cqam-qqj', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:29 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/ae342ead-5862-41a7-bb11-2d4f368881bf', 'UploadId': '68d650c9d73ec60008f935b0'} gunicorn-registry stdout | 2025-09-26 08:37:29,809 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:29,810 [258] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/ae342ead-5862-41a7-bb11-2d4f368881bf', 'UploadId': '68d650c9d73ec60008f935b0'} gunicorn-registry stdout | 2025-09-26 08:37:29,810 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,810 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,810 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,810 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,810 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,810 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,810 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:29,810 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:29,810 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:29,810 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:29,811 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,811 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,811 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,811 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/ae342ead-5862-41a7-bb11-2d4f368881bf', 'query_string': {'uploadId': '68d650c9d73ec60008f935b0'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ae342ead-5862-41a7-bb11-2d4f368881bf', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ae342ead-5862-41a7-bb11-2d4f368881bf?uploadId=68d650c9d73ec60008f935b0', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/ae342ead-5862-41a7-bb11-2d4f368881bf', 'UploadId': '68d650c9d73ec60008f935b0'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:29,811 [258] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,811 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,811 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,811 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,811 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:29,812 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ae342ead-5862-41a7-bb11-2d4f368881bf gunicorn-registry stdout | uploadId=68d650c9d73ec60008f935b0 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083729Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:29,812 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083729Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 8ed3e5762cda7963746da65d56b44b15a42b4afe2f2139ba9bc3213fb0f8e92e gunicorn-registry stdout | 2025-09-26 08:37:29,812 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 0d37e0815d43526b2ed0051989d9abc12a6ba79f32c5ac7530c8c3222a521e92 gunicorn-registry stdout | 2025-09-26 08:37:29,813 [258] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,813 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:29,813 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:29,820 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/ae342ead-5862-41a7-bb11-2d4f368881bf?uploadId=68d650c9d73ec60008f935b0 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:37:29,820 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9niu-g8jwcu-cz7', 'x-amz-id-2': 'mg0l9niu-g8jwcu-cz7', 'Date': 'Fri, 26 Sep 2025 08:37:29 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:29,820 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:29,820 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,820 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:29,820 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,820 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9niu-g8jwcu-cz7', 'HostId': 'mg0l9niu-g8jwcu-cz7', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9niu-g8jwcu-cz7', 'x-amz-id-2': 'mg0l9niu-g8jwcu-cz7', 'date': 'Fri, 26 Sep 2025 08:37:29 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:37:29,821 [258] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 4c7ac7ce-4e78-418e-8592-2c26ce21b741 took 0.02305769920349121 seconds gunicorn-registry stdout | 2025-09-26 08:37:29,821 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['4c7ac7ce-4e78-418e-8592-2c26ce21b741', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,822 [258] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '4c7ac7ce-4e78-418e-8592-2c26ce21b741', 79039, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwMjIxNTNmYzZhNGY4ZWM5NmRkMTM1OCIsInJlbGF0aW9uc2hpcFR5cGUiOiJHRU5FUkFURURfRlJPTSJ9XX19Yj8AAAAAAAAAAKQJAAAAAADD1+GN6f16P00Ac0PEVGnFQFXDwhFclL1pWbLvnZk+VZRiLg==', 9, '{"chunks": [["uploads/df6a09d5-464d-41b7-8d76-5c408e89facd", 0, 79039]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 37, 29, 506611), None, None, 74]) gunicorn-registry stdout | 2025-09-26 08:37:29,824 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:29,824 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:29,824 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:29,825 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:29,825 [258] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/9a/9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33'} gunicorn-registry stdout | 2025-09-26 08:37:29,825 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,825 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,825 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,825 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,825 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,826 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,826 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,826 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:29,826 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:29,826 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:29,826 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:29,826 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,826 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,826 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,826 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/9a/9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/9a/9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/9a/9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/9a/9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:29,826 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,826 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,827 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,827 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,827 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:29,827 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/9a/9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083729Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:29,827 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083729Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 703deecd3d19233de30a05930a6b53f882888a88fb8091d57b81a53496850b96 gunicorn-registry stdout | 2025-09-26 08:37:29,828 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | b1e35ad647228727a1eb7789d336bb26a6df801179b4414a7e948048405b7b49 gunicorn-registry stdout | 2025-09-26 08:37:29,828 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,828 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:29,828 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:29,833 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/9a/9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:37:29,833 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9nj9-ghlp5l-f9a', 'x-amz-id-2': 'mg0l9nj9-ghlp5l-f9a', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:29 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:29,833 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:29,834 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,834 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:29,834 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,834 [258] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:37:29,834 [258] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:37:29,834 [258] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/9a/9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33 gunicorn-registry stdout | 2025-09-26 08:37:29,835 [258] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:29,835 [258] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:29,835 [258] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:29,835 [258] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:37:29,835 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,835 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,835 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,835 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,835 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,835 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,836 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,836 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:29,836 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:29,836 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:29,836 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:29,836 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,836 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,836 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,836 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/df6a09d5-464d-41b7-8d76-5c408e89facd', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/df6a09d5-464d-41b7-8d76-5c408e89facd', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/df6a09d5-464d-41b7-8d76-5c408e89facd', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/df6a09d5-464d-41b7-8d76-5c408e89facd'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:29,837 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,837 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,837 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,837 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,837 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,837 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:29,837 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/df6a09d5-464d-41b7-8d76-5c408e89facd gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083729Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:29,837 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083729Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | b33ad20a963caf9317570d536e40a15ce06c31d6d85f7e40235f17538d488759 gunicorn-registry stdout | 2025-09-26 08:37:29,837 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | e6181354eba6e8bc5462533ba285c4a50c6c5da8152661120928bf261c0c3f1b gunicorn-registry stdout | 2025-09-26 08:37:29,837 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,837 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,837 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:29,838 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:29,838 [258] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | 2025-09-26 08:37:29,869 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/df6a09d5-464d-41b7-8d76-5c408e89facd HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:29,869 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9nk9-jcow0-oi4', 'x-amz-id-2': 'mg0l9nk9-jcow0-oi4', 'ETag': '"df65fbbd51a30b7791bad8c06b6ce279-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:29 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '79039', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:29 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:29,869 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:29,870 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,870 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:29,870 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,870 [258] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/9a/9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:37:29,870 [258] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:29,870 [258] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/9a/9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:29,870 [258] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/9a/9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:29,870 [258] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/9a/9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/df6a09d5-464d-41b7-8d76-5c408e89facd'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/9a/9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33', 'extra_args': {}, 'callbacks': [], 'size': 79039} gunicorn-registry stdout | 2025-09-26 08:37:29,870 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,870 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,870 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,870 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,870 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,870 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,870 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,870 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,870 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,870 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,871 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:29,871 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:29,871 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:29,871 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:29,871 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,871 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,871 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,871 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/9a/9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/df6a09d5-464d-41b7-8d76-5c408e89facd', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/9a/9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/9a/9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/df6a09d5-464d-41b7-8d76-5c408e89facd', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/9a/9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:29,871 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,871 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,871 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,871 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,871 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,871 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:29,871 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/9a/9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/df6a09d5-464d-41b7-8d76-5c408e89facd gunicorn-registry stdout | x-amz-date:20250926T083729Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:29,871 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083729Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 9e9948d3c475afce4236fb49cb10189a1b796cfdb76d5e2f5ada31380d28f1c2 gunicorn-registry stdout | 2025-09-26 08:37:29,871 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 5c5b4ed2f531ab9ef97993d0348808c10f6936981a815b70eb904c247793d241 gunicorn-registry stdout | 2025-09-26 08:37:29,871 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,871 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,872 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:29,872 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:29,872 [258] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:29,899 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/9a/9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:37:29,899 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9nki-ojq23-szd', 'x-amz-id-2': 'mg0l9nki-ojq23-szd', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:37:29 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:29,899 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:37:29.000Z"df65fbbd51a30b7791bad8c06b6ce279-1"' gunicorn-registry stdout | 2025-09-26 08:37:29,899 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,900 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:29,900 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:29,900 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:29,900 [258] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:29,900 [258] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 4c7ac7ce-4e78-418e-8592-2c26ce21b741 with digest sha256:9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33 took 0.06623196601867676 seconds gunicorn-registry stdout | 2025-09-26 08:37:29,901 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['4c7ac7ce-4e78-418e-8592-2c26ce21b741', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,902 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,902 [258] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['852506ce-9ebb-432e-a20a-9c4dbd710019', 79039, None, True, True, 'sha256:9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33']) gunicorn-registry stdout | 2025-09-26 08:37:29,903 [258] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [74, 9]) gunicorn-registry stdout | 2025-09-26 08:37:29,905 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:29,905 [258] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [3, 74, datetime.datetime(2025, 9, 26, 8, 37, 29, 905638), datetime.datetime(2025, 9, 26, 9, 37, 29, 905624)]) gunicorn-registry stdout | 2025-09-26 08:37:29,906 [258] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [74]) gunicorn-registry stdout | 2025-09-26 08:37:29,908 [258] [DEBUG] [app] Ending request: urn:request:76474355-d21e-4f60-a5f1-f2fbb516740c (/v2/testorg2/alpine/blobs/uploads/4c7ac7ce-4e78-418e-8592-2c26ce21b741) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:76474355-d21e-4f60-a5f1-f2fbb516740c', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/4c7ac7ce-4e78-418e-8592-2c26ce21b741?digest=sha256:9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33', 'path': '/v2/testorg2/alpine/blobs/uploads/4c7ac7ce-4e78-418e-8592-2c26ce21b741', 'parameters': {'digest': 'sha256:9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:29,908 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:29,908 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:29,908 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:29 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/4c7ac7ce-4e78-418e-8592-2c26ce21b741?digest=sha256%3A9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:29 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/4c7ac7ce-4e78-418e-8592-2c26ce21b741?digest=sha256%3A9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.124 1853 0.125) gunicorn-registry stdout | 2025-09-26 08:37:30,184 [256] [DEBUG] [app] Starting request: urn:request:069e8c52-e2d4-496f-9ed0-98623d99667c (/v2/testorg2/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:30,185 [256] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:30,185 [256] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:30,185 [256] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:30,186 [256] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:30,186 [256] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:30,186 [256] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:30,186 [256] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:30,186 [256] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:30,187 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,188 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,189 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,191 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,192 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,193 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,194 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:30,195 [256] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,196 [256] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [3, '1e4eca49-cab5-4c02-8955-6afc6fae7698', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 37, 30, 196591)]) gunicorn-registry stdout | 2025-09-26 08:37:30,199 [256] [DEBUG] [app] Ending request: urn:request:069e8c52-e2d4-496f-9ed0-98623d99667c (/v2/testorg2/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:069e8c52-e2d4-496f-9ed0-98623d99667c', 'remote_addr': '10.131.2.20', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/', 'path': '/v2/testorg2/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:30,199 [256] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:30,200 [256] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:30,200 [256] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:30 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:30 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.017 1697 0.017) gunicorn-registry stdout | 2025-09-26 08:37:30,428 [258] [DEBUG] [app] Starting request: urn:request:032694a7-c538-45d6-9c32-2dc2e3f3783c (/v2/testorg2/alpine/blobs/uploads/1e4eca49-cab5-4c02-8955-6afc6fae7698) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:30,428 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '1e4eca49-cab5-4c02-8955-6afc6fae7698', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:30,428 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:30,428 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:30,429 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:30,429 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:30,429 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:30,429 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:30,430 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:30,430 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,432 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,433 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,434 [258] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,436 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,437 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,438 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,439 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:30,439 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['1e4eca49-cab5-4c02-8955-6afc6fae7698', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,441 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:30,441 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:30,441 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:30,442 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:30,442 [258] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/18fa8841-6ee4-4191-a247-c05658f4eec5', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:30,442 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,442 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,442 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,442 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,442 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,442 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,442 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,442 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,442 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:30,442 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:30,442 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:30,442 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:30,443 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,443 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,443 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,443 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/18fa8841-6ee4-4191-a247-c05658f4eec5?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18fa8841-6ee4-4191-a247-c05658f4eec5', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18fa8841-6ee4-4191-a247-c05658f4eec5?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/18fa8841-6ee4-4191-a247-c05658f4eec5', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:30,443 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,443 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,443 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,443 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,443 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:30,443 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18fa8841-6ee4-4191-a247-c05658f4eec5 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083730Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:30,443 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083730Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 1aeaed9f355d2e27e222bccfb2258ad51fc8aea1c2b9eae0d6542e88d3750bae gunicorn-registry stdout | 2025-09-26 08:37:30,443 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 69afe561e4fad2afc7c0874cf83240116456a4f94a5524efbe47da47836e4197 gunicorn-registry stdout | 2025-09-26 08:37:30,443 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,443 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:30,444 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:30,451 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18fa8841-6ee4-4191-a247-c05658f4eec5?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:30,451 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9o0e-a541v6-x29', 'x-amz-id-2': 'mg0l9o0e-a541v6-x29', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:30 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:30,451 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/18fa8841-6ee4-4191-a247-c05658f4eec568d650cad73ec60008f935bb' gunicorn-registry stdout | 2025-09-26 08:37:30,452 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,452 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:30,452 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,452 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9o0e-a541v6-x29', 'HostId': 'mg0l9o0e-a541v6-x29', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9o0e-a541v6-x29', 'x-amz-id-2': 'mg0l9o0e-a541v6-x29', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:30 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/18fa8841-6ee4-4191-a247-c05658f4eec5', 'UploadId': '68d650cad73ec60008f935bb'} gunicorn-registry stdout | 2025-09-26 08:37:30,452 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:30,453 [258] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/18fa8841-6ee4-4191-a247-c05658f4eec5', 'UploadId': '68d650cad73ec60008f935bb'} gunicorn-registry stdout | 2025-09-26 08:37:30,453 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,453 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,453 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,453 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,453 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,453 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,453 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:30,453 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:30,453 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:30,453 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:30,453 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,453 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,453 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,453 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/18fa8841-6ee4-4191-a247-c05658f4eec5', 'query_string': {'uploadId': '68d650cad73ec60008f935bb'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18fa8841-6ee4-4191-a247-c05658f4eec5', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18fa8841-6ee4-4191-a247-c05658f4eec5?uploadId=68d650cad73ec60008f935bb', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/18fa8841-6ee4-4191-a247-c05658f4eec5', 'UploadId': '68d650cad73ec60008f935bb'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:30,454 [258] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,454 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,454 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,454 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,454 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:30,454 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18fa8841-6ee4-4191-a247-c05658f4eec5 gunicorn-registry stdout | uploadId=68d650cad73ec60008f935bb gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083730Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:30,454 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083730Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 486b321640625ea5204682ef61fd07343dbcf5805d1a0d07dddd773d3263556c gunicorn-registry stdout | 2025-09-26 08:37:30,454 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | ada68ead72f2176a90eeb26895b33947ff43bed0167ec5e1445b292a73aa3493 gunicorn-registry stdout | 2025-09-26 08:37:30,454 [258] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,454 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:30,455 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:30,461 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/18fa8841-6ee4-4191-a247-c05658f4eec5?uploadId=68d650cad73ec60008f935bb HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:37:30,461 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9o0n-aazifi-xhk', 'x-amz-id-2': 'mg0l9o0n-aazifi-xhk', 'Date': 'Fri, 26 Sep 2025 08:37:30 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:30,461 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:30,461 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,461 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:30,461 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,461 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9o0n-aazifi-xhk', 'HostId': 'mg0l9o0n-aazifi-xhk', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9o0n-aazifi-xhk', 'x-amz-id-2': 'mg0l9o0n-aazifi-xhk', 'date': 'Fri, 26 Sep 2025 08:37:30 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:37:30,462 [258] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 1e4eca49-cab5-4c02-8955-6afc6fae7698 took 0.020760059356689453 seconds gunicorn-registry stdout | 2025-09-26 08:37:30,462 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['1e4eca49-cab5-4c02-8955-6afc6fae7698', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,463 [258] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '1e4eca49-cab5-4c02-8955-6afc6fae7698', 241, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwNGU4NTg3MzkxYWVhZTg3MjU4YjAzMjE1MDM3YmE3Y2Y3ZmQ0OGUwNTNhNWUxIl19fWE4ZWQ1MjU1Nzg5NjliZTEAAAAAAAAAAAYAAAAAAADt3emXmagEnHKTsuMAExVBYZH+YjB36FzPOz6lDS8P3ZRiLg==', 9, '{"chunks": [["uploads/a72bc061-58d0-453c-952e-ed618b550848", 0, 241]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 37, 30, 196591), None, None, 75]) gunicorn-registry stdout | 2025-09-26 08:37:30,465 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:30,465 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:30,465 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:30,466 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:30,467 [258] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733'} gunicorn-registry stdout | 2025-09-26 08:37:30,467 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,467 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,467 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,467 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,467 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,467 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,467 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,467 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:30,467 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:30,467 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:30,467 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:30,467 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,467 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,467 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,467 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:30,467 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,467 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,468 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,468 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,468 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:30,468 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083730Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:30,468 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083730Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 4642d78a6b8ecfa3174433ec4296b9c79653fb8633e766c06ecc344fdefebbdd gunicorn-registry stdout | 2025-09-26 08:37:30,468 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 00ab0bebc5c625e120a52f117da8fe5d8fd9cff9c1261d6847fecdb47844930b gunicorn-registry stdout | 2025-09-26 08:37:30,468 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,468 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:30,468 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:30,473 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:37:30,473 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9o11-aj5nht-1g', 'x-amz-id-2': 'mg0l9o11-aj5nht-1g', 'Content-Type': 'application/xml', 'Content-Length': '337', 'Date': 'Fri, 26 Sep 2025 08:37:30 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:30,473 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:30,473 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,473 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:30,473 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,473 [258] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:37:30,473 [258] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:37:30,474 [258] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733 gunicorn-registry stdout | 2025-09-26 08:37:30,474 [258] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:30,474 [258] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:30,474 [258] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:30,474 [258] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:37:30,474 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,475 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,475 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,475 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,475 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,475 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,475 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,475 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:30,475 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:30,475 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:30,475 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:30,475 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,475 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,475 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,475 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/a72bc061-58d0-453c-952e-ed618b550848', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a72bc061-58d0-453c-952e-ed618b550848', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a72bc061-58d0-453c-952e-ed618b550848', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/a72bc061-58d0-453c-952e-ed618b550848'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:30,475 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,476 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,476 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,476 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,476 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,476 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:30,476 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a72bc061-58d0-453c-952e-ed618b550848 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083730Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:30,476 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083730Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 49d568364fae64b4874ac9ad7e0b5cf6b702f65efb7f63134fde95d013f7db25 gunicorn-registry stdout | 2025-09-26 08:37:30,476 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 66c46de23ae22b649dac2263e01bf42bdf5543c5953fd7ddd9c57165ae51fde3 gunicorn-registry stdout | 2025-09-26 08:37:30,476 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,476 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,476 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:30,477 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:30,480 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a72bc061-58d0-453c-952e-ed618b550848 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:30,481 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9o19-ao31ga-v38', 'x-amz-id-2': 'mg0l9o19-ao31ga-v38', 'ETag': '"5326b816e6e0a28dad7eaccd010d2a2a-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:30 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:30 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:30,481 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:30,481 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,481 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:30,481 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,481 [258] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:37:30,481 [258] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:30,482 [258] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:30,482 [258] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:30,482 [258] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/a72bc061-58d0-453c-952e-ed618b550848'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 'extra_args': {}, 'callbacks': [], 'size': 241} gunicorn-registry stdout | 2025-09-26 08:37:30,482 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,482 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,482 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,482 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,482 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,482 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,482 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,482 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,482 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,482 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,482 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:30,482 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:30,482 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:30,482 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:30,482 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,482 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,483 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,483 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a72bc061-58d0-453c-952e-ed618b550848', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a72bc061-58d0-453c-952e-ed618b550848', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:30,483 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,483 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,483 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,483 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,483 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,483 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:30,483 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/a72bc061-58d0-453c-952e-ed618b550848 gunicorn-registry stdout | x-amz-date:20250926T083730Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:30,483 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083730Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | e2779289a4b5019a21c53802a02910828e4fd47d5bde5325e078a6e692f8c989 gunicorn-registry stdout | 2025-09-26 08:37:30,483 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 24fa278e83d9a37f6a1c3910538d4f36b52929069fdff64b8e83f2ea18071306 gunicorn-registry stdout | 2025-09-26 08:37:30,483 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,483 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,483 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:30,483 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:30,484 [258] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:30,508 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:37:30,508 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9o1h-as9prd-cab', 'x-amz-id-2': 'mg0l9o1h-as9prd-cab', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:37:30 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:30,508 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:37:30.000Z"5326b816e6e0a28dad7eaccd010d2a2a-1"' gunicorn-registry stdout | 2025-09-26 08:37:30,509 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,509 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,509 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:30,509 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,509 [258] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:30,509 [258] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 1e4eca49-cab5-4c02-8955-6afc6fae7698 with digest sha256:4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733 took 0.03590750694274902 seconds gunicorn-registry stdout | 2025-09-26 08:37:30,510 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['1e4eca49-cab5-4c02-8955-6afc6fae7698', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,511 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,512 [258] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['0dac0292-74e4-4964-86e5-5808ca139e8a', 241, None, True, True, 'sha256:4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733']) gunicorn-registry stdout | 2025-09-26 08:37:30,513 [258] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [76, 9]) gunicorn-registry stdout | 2025-09-26 08:37:30,514 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,514 [258] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [3, 76, datetime.datetime(2025, 9, 26, 8, 37, 30, 514721), datetime.datetime(2025, 9, 26, 9, 37, 30, 514706)]) gunicorn-registry stdout | 2025-09-26 08:37:30,515 [258] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [75]) gunicorn-registry stdout | 2025-09-26 08:37:30,517 [258] [DEBUG] [app] Ending request: urn:request:032694a7-c538-45d6-9c32-2dc2e3f3783c (/v2/testorg2/alpine/blobs/uploads/1e4eca49-cab5-4c02-8955-6afc6fae7698) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:032694a7-c538-45d6-9c32-2dc2e3f3783c', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/1e4eca49-cab5-4c02-8955-6afc6fae7698?digest=sha256:4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 'path': '/v2/testorg2/alpine/blobs/uploads/1e4eca49-cab5-4c02-8955-6afc6fae7698', 'parameters': {'digest': 'sha256:4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:30,517 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:30,517 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:30 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/1e4eca49-cab5-4c02-8955-6afc6fae7698?digest=sha256%3A4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.090 1853 0.090) gunicorn-registry stdout | 2025-09-26 08:37:30,517 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:30 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/1e4eca49-cab5-4c02-8955-6afc6fae7698?digest=sha256%3A4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" gunicorn-registry stdout | 2025-09-26 08:37:30,575 [258] [DEBUG] [app] Starting request: urn:request:935f6b32-ea09-448e-8f74-d81e4dfe06c6 (/v2/testorg2/alpine/manifests/sha256:8bec0de62b43ed91fa736cf98c89e67e8b0593b1d543e02f2995a4ce80b17d1f) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:30,575 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'manifest_ref': 'sha256:8bec0de62b43ed91fa736cf98c89e67e8b0593b1d543e02f2995a4ce80b17d1f', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:30,575 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:30,575 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:30,577 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:30,577 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:30,577 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:30,577 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:30,577 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:30,578 [258] [DEBUG] [data.cache.cache_key] Loading repository lookup from cache_key: repository_lookup_testorg2_alpine gunicorn-registry stdout | 2025-09-26 08:37:30,578 [258] [DEBUG] [data.cache.impl] Checking cache for key repository_lookup_testorg2_alpine gunicorn-registry stdout | 2025-09-26 08:37:30,578 [258] [DEBUG] [data.cache.impl] Found result in cache for key repository_lookup_testorg2_alpine: {'id': 3, 'visibility': {'id': 2, 'name': 'private'}, 'kind': {'id': 1, 'name': 'image'}, 'state': 0, 'namespace_user': {'stripe_id': None}} gunicorn-registry stdout | 2025-09-26 08:37:30,579 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:8bec0de62b43ed91fa736cf98c89e67e8b0593b1d543e02f2995a4ce80b17d1f', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,581 [258] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL ((SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "uploadedblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1") UNION ALL (SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "uploadedblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q2"))', [3, 'sha256:4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 1, 3, 'sha256:af8ba8ed525578969be4e8587391aeae87258b03215037ba7cf7fd48e053a5e1', 1, 3, 'sha256:9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33', 1]) gunicorn-registry stdout | 2025-09-26 08:37:30,583 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."digest" = %s) AND ("t1"."repository_id" = %s)) LIMIT %s OFFSET %s', ['sha256:8bec0de62b43ed91fa736cf98c89e67e8b0593b1d543e02f2995a4ce80b17d1f', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,584 [258] [DEBUG] [peewee] ('INSERT INTO "manifest" ("repository_id", "digest", "media_type_id", "manifest_bytes", "config_media_type", "layers_compressed_size", "subject", "subject_backfilled", "artifact_type", "artifact_type_backfilled") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifest"."id"', [3, 'sha256:8bec0de62b43ed91fa736cf98c89e67e8b0593b1d543e02f2995a4ce80b17d1f', 18, '{\n "schemaVersion": 2,\n "mediaType": "application/vnd.oci.image.manifest.v1+json",\n "config": {\n "mediaType": "application/vnd.oci.image.config.v1+json",\n "digest": "sha256:4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733",\n "size": 241\n },\n "layers": [\n {\n "mediaType": "application/vnd.in-toto+json",\n "digest": "sha256:9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33",\n "size": 79039,\n "annotations": {\n "in-toto.io/predicate-type": "https://spdx.dev/Document"\n }\n },\n {\n "mediaType": "application/vnd.in-toto+json",\n "digest": "sha256:af8ba8ed525578969be4e8587391aeae87258b03215037ba7cf7fd48e053a5e1",\n "size": 5718,\n "annotations": {\n "in-toto.io/predicate-type": "https://slsa.dev/provenance/v0.2"\n }\n }\n ]\n}', 'application/vnd.oci.image.config.v1+json', 84757, None, True, None, True]) gunicorn-registry stdout | 2025-09-26 08:37:30,585 [258] [DEBUG] [peewee] ('INSERT INTO "manifestblob" ("repository_id", "manifest_id", "blob_id") VALUES (%s, %s, %s), (%s, %s, %s), (%s, %s, %s) RETURNING "manifestblob"."id"', [3, 30, 74, 3, 30, 75, 3, 30, 76]) gunicorn-registry stdout | 2025-09-26 08:37:30,585 [258] [DEBUG] [peewee] ('SELECT "t1"."namespace_user_id" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,586 [258] [DEBUG] [peewee] ('SELECT 1 FROM "user" AS "t1" WHERE ((("t1"."id" = %s) AND "t1"."enabled") AND NOT "t1"."robot") LIMIT %s', [4, 1]) gunicorn-registry stdout | 2025-09-26 08:37:30,587 [258] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [4, 76, 30, 1]) gunicorn-registry stdout | 2025-09-26 08:37:30,587 [258] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [4, 75, 30, 1]) gunicorn-registry stdout | 2025-09-26 08:37:30,588 [258] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [4, 74, 30, 1]) gunicorn-registry stdout | 2025-09-26 08:37:30,589 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,589 [258] [INFO] [data.model.quota] updating namespace size for manifest 30 in namespace 4, QuotaOperation.ADD 84998 gunicorn-registry stdout | 2025-09-26 08:37:30,590 [258] [DEBUG] [peewee] ('UPDATE "quotanamespacesize" SET "size_bytes" = ("quotanamespacesize"."size_bytes" + %s) WHERE ("quotanamespacesize"."namespace_user_id" = %s)', [84998, 4]) gunicorn-registry stdout | 2025-09-26 08:37:30,590 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotarepositorysize" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,591 [258] [INFO] [data.model.quota] updating repository size for manifest 30 in repository 3, QuotaOperation.ADD 84998 gunicorn-registry stdout | 2025-09-26 08:37:30,591 [258] [DEBUG] [peewee] ('UPDATE "quotarepositorysize" SET "size_bytes" = ("quotarepositorysize"."size_bytes" + %s) WHERE ("quotarepositorysize"."repository_id" = %s)', [84998, 3]) gunicorn-registry stdout | 2025-09-26 08:37:30,592 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [30, None, 1758879450592, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,593 [258] [DEBUG] [peewee] ('INSERT INTO "tag" ("name", "repository_id", "manifest_id", "lifetime_start_ms", "lifetime_end_ms", "immutable", "hidden", "reversion", "tag_kind_id") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "tag"."id"', ['$temp-f2612e25-1d64-45c0-b84f-a1475decdbff', 3, 30, 1758875850592, 1758879450592, False, True, False, 1]) gunicorn-registry stdout | 2025-09-26 08:37:30,595 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,597 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['0dac0292-74e4-4964-86e5-5808ca139e8a']) gunicorn-registry stdout | 2025-09-26 08:37:30,597 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:30,598 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:30,598 [258] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733'} gunicorn-registry stdout | 2025-09-26 08:37:30,598 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,598 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,598 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,598 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,599 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,599 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,599 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,599 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:30,599 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:30,599 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:30,599 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:30,599 [258] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,599 [258] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,599 [258] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,599 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:30,599 [258] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,599 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,599 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,599 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,599 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:30,599 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083730Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:30,599 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083730Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | ccdc50eb4a967673233054b07bf342f8af0797ad57fd8b08945fcb1eb5c7817b gunicorn-registry stdout | 2025-09-26 08:37:30,599 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 301c9d726b22d81a5c8b33954ac57e390ee174e1304902c1343cf6efb4a954ef gunicorn-registry stdout | 2025-09-26 08:37:30,600 [258] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,600 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:30,600 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:30,643 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733 HTTP/1.1" 200 241 gunicorn-registry stdout | 2025-09-26 08:37:30,644 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9o4p-cpkmld-74b', 'x-amz-id-2': 'mg0l9o4p-cpkmld-74b', 'ETag': '"5326b816e6e0a28dad7eaccd010d2a2a-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:30 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:30 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:30,644 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:30,644 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:30,644 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:30,645 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:30,645 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9o4p-cpkmld-74b', 'HostId': 'mg0l9o4p-cpkmld-74b', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9o4p-cpkmld-74b', 'x-amz-id-2': 'mg0l9o4p-cpkmld-74b', 'etag': '"5326b816e6e0a28dad7eaccd010d2a2a-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:30 GMT', 'content-type': 'application/octet-stream', 'content-length': '241', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:30 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 30, tzinfo=tzutc()), 'ContentLength': 241, 'ETag': '"5326b816e6e0a28dad7eaccd010d2a2a-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:30,646 [258] [DEBUG] [app] Ending request: urn:request:935f6b32-ea09-448e-8f74-d81e4dfe06c6 (/v2/testorg2/alpine/manifests/sha256:8bec0de62b43ed91fa736cf98c89e67e8b0593b1d543e02f2995a4ce80b17d1f) {'endpoint': 'v2.write_manifest_by_digest', 'request_id': 'urn:request:935f6b32-ea09-448e-8f74-d81e4dfe06c6', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/manifests/sha256:8bec0de62b43ed91fa736cf98c89e67e8b0593b1d543e02f2995a4ce80b17d1f', 'path': '/v2/testorg2/alpine/manifests/sha256:8bec0de62b43ed91fa736cf98c89e67e8b0593b1d543e02f2995a4ce80b17d1f', 'parameters': {}, 'json_body': {'schemaVersion': 2, 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'config': {'mediaType': 'application/vnd.oci.image.config.v1+json', 'digest': 'sha256:4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 'size': 241}, 'layers': [{'mediaType': 'application/vnd.in-toto+json', 'digest': 'sha256:9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33', 'size': 79039, 'annotations': {'in-toto.io/predicate-type': 'https://spdx.dev/Document'}}, {'mediaType': 'application/vnd.in-toto+json', 'digest': 'sha256:af8ba8ed525578969be4e8587391aeae87258b03215037ba7cf7fd48e053a5e1', 'size': 5718, 'annotations': {'in-toto.io/predicate-type': 'https://slsa.dev/provenance/v0.2'}}]}, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:30,646 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:30,647 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:30,647 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:30 +0000] "PUT /v2/testorg2/alpine/manifests/sha256:8bec0de62b43ed91fa736cf98c89e67e8b0593b1d543e02f2995a4ce80b17d1f HTTP/1.1" 201 2 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:30 +0000] "PUT /v2/testorg2/alpine/manifests/sha256:8bec0de62b43ed91fa736cf98c89e67e8b0593b1d543e02f2995a4ce80b17d1f HTTP/1.1" 201 2 "-" "skopeo/1.14.5" (0.073 2661 0.073) notificationworker stdout | 2025-09-26 08:37:30,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:37:30,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:37.771811+00:00 (in 7.078488 seconds) notificationworker stdout | 2025-09-26 08:37:30,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:40 GMT)" (scheduled at 2025-09-26 08:37:30.692901+00:00) notificationworker stdout | 2025-09-26 08:37:30,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:37:30,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 37, 30, 693613), True, datetime.datetime(2025, 9, 26, 8, 37, 30, 693613), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:37:30,702 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:37:30,702 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:37:30,703 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:40 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:37:30,729 [251] [DEBUG] [app] Starting request: urn:request:f8c81573-abe1-4f1a-8577-9dc2c8162a6d (/v2/testorg2/alpine/blobs/sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:30,729 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:30,729 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:30,729 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:30,731 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:30,731 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:30,731 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:30,731 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:30,731 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:30,732 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,734 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,734 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:30,735 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da_2 gunicorn-registry stdout | 2025-09-26 08:37:30,735 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:30,736 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,737 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,738 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,740 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,742 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:30,744 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da_2: None gunicorn-registry stdout | 2025-09-26 08:37:30,744 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da_2: None gunicorn-registry stdout | 2025-09-26 08:37:30,744 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:30,744 [251] [DEBUG] [app] Ending request: urn:request:f8c81573-abe1-4f1a-8577-9dc2c8162a6d (/v2/testorg2/alpine/blobs/sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:f8c81573-abe1-4f1a-8577-9dc2c8162a6d', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 'path': '/v2/testorg2/alpine/blobs/sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:30,744 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:30,744 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:30,745 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:30 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:30 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.017 1718 0.017) gunicorn-registry stdout | 2025-09-26 08:37:31,041 [251] [DEBUG] [app] Starting request: urn:request:9017099c-0457-48c2-997e-842982336338 (/v2/testorg2/alpine/blobs/uploads/4e493911-4120-4f8b-8ecb-0ac04e1dbb97) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:31,041 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '4e493911-4120-4f8b-8ecb-0ac04e1dbb97', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:31,041 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:31,041 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:31,042 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:31,042 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:31,042 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:31,042 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:31,042 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:31,043 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,045 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,046 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,047 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,048 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,050 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,051 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,052 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:31,053 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['4e493911-4120-4f8b-8ecb-0ac04e1dbb97', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,054 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:31,054 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:31,055 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:31,057 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:31,057 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:31,057 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,057 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,057 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,057 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,057 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,057 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,057 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,057 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,057 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:31,057 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:31,058 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:31,058 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:31,058 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,058 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,058 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,058 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:31,058 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,058 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,058 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,058 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,059 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:31,059 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083731Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:31,059 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083731Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | e967255984b6664c1860c305fb04708e5c36f739a438e1a4f0140ff6797df428 gunicorn-registry stdout | 2025-09-26 08:37:31,059 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 68a87db0631f211836229de863cdeaac5614a83de9135f57eb9659e6a223e093 gunicorn-registry stdout | 2025-09-26 08:37:31,059 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,059 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:31,059 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:31,066 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:31,066 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ohh-3rz3an-1cza', 'x-amz-id-2': 'mg0l9ohh-3rz3an-1cza', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:31 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:31,066 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d68d650cbd73ec60008f935be' gunicorn-registry stdout | 2025-09-26 08:37:31,066 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,066 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:31,066 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,066 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9ohh-3rz3an-1cza', 'HostId': 'mg0l9ohh-3rz3an-1cza', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ohh-3rz3an-1cza', 'x-amz-id-2': 'mg0l9ohh-3rz3an-1cza', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:31 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d', 'UploadId': '68d650cbd73ec60008f935be'} gunicorn-registry stdout | 2025-09-26 08:37:31,066 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:31,395 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:31,395 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:31,396 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d', 'UploadId': '68d650cbd73ec60008f935be', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b897f290>, 'ContentLength': 3512801} gunicorn-registry stdout | 2025-09-26 08:37:31,396 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,396 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,396 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,396 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,396 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,397 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,397 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,397 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,397 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:31,397 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:31,397 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:31,397 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:31,397 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,404 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,404 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:31,404 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,404 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,404 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d', 'query_string': {'uploadId': '68d650cbd73ec60008f935be', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '3512801', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'iMbPyR4Rl/m1dQ6GgiJX1g==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b897f290>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d?uploadId=68d650cbd73ec60008f935be&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d', 'UploadId': '68d650cbd73ec60008f935be', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b897f290>, 'ContentLength': 3512801}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:31,404 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,404 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,404 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,404 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,404 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:31,404 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d gunicorn-registry stdout | partNumber=1&uploadId=68d650cbd73ec60008f935be gunicorn-registry stdout | content-length:3512801 gunicorn-registry stdout | content-md5:iMbPyR4Rl/m1dQ6GgiJX1g== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083731Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:31,404 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083731Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 1a34eb8f6c368cc6d9d05e63036088159c80b745dc2f83e97150d2acd635f3ba gunicorn-registry stdout | 2025-09-26 08:37:31,404 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 34acc4b6c2cd477da6c7707a19846b2ab3fa5ca1e004b12ec68ccd5f0f6c9f98 gunicorn-registry stdout | 2025-09-26 08:37:31,405 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,405 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:31,405 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:31,405 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:37:31,407 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-web stdout | 2025-09-26 08:37:31,613 [247] [DEBUG] [app] Starting request: urn:request:a99aa802-2977-474f-a0c8-ae6034e1c164 (/_storage_proxy_auth) {'X-Forwarded-For': '3.147.184.98'} gunicorn-web stdout | 2025-09-26 08:37:31,613 [247] [DEBUG] [storage.downloadproxy] Got token b'eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODUxLCJpYXQiOjE3NTg4NzU4NTEsImV4cCI6MTc1ODg3NjQ1MSwic3ViIjoic3RvcmFnZXByb3h5IiwiYWNjZXNzIjpbeyJ0eXBlIjoic3RvcmFnZXByb3h5IiwidXJpIjoicXVheS1kYXRhc3RvcmUtZTI5YzM5OTQtNjJlYi00ZTlmLTk1NTAtYmFhMTFmODc0MDg0L2RhdGFzdG9yYWdlL3JlZ2lzdHJ5L3NoYTI1Ni9hNS9hNTVmMmZiODlkYTRjYWFlMGQ3ODNjMDA0NWE2NzQ0NmRlZTliYmQ5NzdmZWNiNDRkYjllMTIzMTU1MGZhODg4P0FXU0FjY2Vzc0tleUlkPUtxVUFodjYwQUdsQUREcTBNY0taJlNpZ25hdHVyZT1mS3lTaW83R2pwcURWcm52cHkzS0FwMHd4b28lM0QmRXhwaXJlcz0xNzU4ODc2NDUxIiwiaG9zdCI6InMzLm9wZW5zaGlmdC1zdG9yYWdlLnN2Yy5jbHVzdGVyLmxvY2FsOjQ0MyIsInNjaGVtZSI6Imh0dHBzIn1dLCJjb250ZXh0Ijp7fX0.VCWq0mhKX_KLGz9n9Plbx3l_3KvpCfhvJufrQ8Atwt655AWkgZCVqEh3zuTEs4RScnLXi7KlF8X0MTK_2Z9j6TSRQKE5aKs4-oZZIBot0ijU7z_rtyqOXdJJRUVorbkcA8dOi2qupNgzozr9eaElzwZYSzrVtSk4wGWe3tEBZGC6NSaFe5V8yzpmyn871u4ldGh2sI3Ir5QWftyFrwSXeyQRgNSf7nEDlvO6fRJSshZtu5BHxSl8Ge265tL4IsSEpYf9PY9kRzNTL79en6AHS75C6IJoW8uHV2PDVQm7JVb3fPgL4vrV3sXfhA2Tp05QLUrunwpsPlGxW5eJO0LpAg' for storage proxy auth request /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EVXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE5URXNJbVY0Y0NJNk1UYzFPRGczTmpRMU1Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE5TOWhOVFZtTW1aaU9EbGtZVFJqWVdGbE1HUTNPRE5qTURBME5XRTJOelEwTm1SbFpUbGlZbVE1TnpkbVpXTmlORFJrWWpsbE1USXpNVFUxTUdaaE9EZzRQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFtUzNsVGFXODNSMnB3Y1VSV2NtNTJjSGt6UzBGd01IZDRiMjhsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRVeElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuVkNXcTBtaEtYX0tMR3o5bjlQbGJ4M2xfM0t2cENmaHZKdWZyUThBdHd0NjU1QVdrZ1pDVnFFaDN6dVRFczRSU2NuTFhpN0tsRjhYME1US18yWjlqNlRTUlFLRTVhS3M0LW9aWklCb3QwaWpVN3pfcnR5cU9YZEpKUlVWb3Jia2NBOGRPaTJxdXBOZ3pvenI5ZWFFbHp3WllTenJWdFNrNHdHV2UzdEVCWkdDNk5TYUZlNVY4eXpwbXluODcxdTRsZEdoMnNJM0lyNVFXZnR5RnJ3U1hleVFSZ05TZjduRURsdk82ZlJKU3NoWnR1NUJIeFNsOEdlMjY1dEw0SXNTRXBZZjlQWTlrUnpOVEw3OWVuNkFIUzc1QzZJSm9XOHVIVjJQRFZRbTdKVmIzZlBnTDR2clYzc1hmaEEyVHAwNVFMVXJ1bndwc1BsR3hXNWVKTzBMcEFn/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a5/a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=fKySio7GjpqDVrnvpy3KAp0wxoo%3D&Expires=1758876451 with parts ['ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EVXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE5URXNJbVY0Y0NJNk1UYzFPRGczTmpRMU1Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE5TOWhOVFZtTW1aaU9EbGtZVFJqWVdGbE1HUTNPRE5qTURBME5XRTJOelEwTm1SbFpUbGlZbVE1TnpkbVpXTmlORFJrWWpsbE1USXpNVFUxTUdaaE9EZzRQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFtUzNsVGFXODNSMnB3Y1VSV2NtNTJjSGt6UzBGd01IZDRiMjhsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRVeElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuVkNXcTBtaEtYX0tMR3o5bjlQbGJ4M2xfM0t2cENmaHZKdWZyUThBdHd0NjU1QVdrZ1pDVnFFaDN6dVRFczRSU2NuTFhpN0tsRjhYME1US18yWjlqNlRTUlFLRTVhS3M0LW9aWklCb3QwaWpVN3pfcnR5cU9YZEpKUlVWb3Jia2NBOGRPaTJxdXBOZ3pvenI5ZWFFbHp3WllTenJWdFNrNHdHV2UzdEVCWkdDNk5TYUZlNVY4eXpwbXluODcxdTRsZEdoMnNJM0lyNVFXZnR5RnJ3U1hleVFSZ05TZjduRURsdk82ZlJKU3NoWnR1NUJIeFNsOEdlMjY1dEw0SXNTRXBZZjlQWTlrUnpOVEw3OWVuNkFIUzc1QzZJSm9XOHVIVjJQRFZRbTdKVmIzZlBnTDR2clYzc1hmaEEyVHAwNVFMVXJ1bndwc1BsR3hXNWVKTzBMcEFn', 'https', 's3.openshift-storage.svc.cluster.local:443', 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a5/a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=fKySio7GjpqDVrnvpy3KAp0wxoo%3D&Expires=1758876451'] gunicorn-web stdout | 2025-09-26 08:37:31,617 [247] [DEBUG] [app] Ending request: urn:request:a99aa802-2977-474f-a0c8-ae6034e1c164 (/_storage_proxy_auth) {'endpoint': '_storage_proxy_auth', 'request_id': 'urn:request:a99aa802-2977-474f-a0c8-ae6034e1c164', 'remote_addr': '3.147.184.98', 'http_method': 'GET', 'original_url': 'https://web_app_server/_storage_proxy_auth', 'path': '/_storage_proxy_auth', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'Go-http-client/1.1'} gunicorn-web stdout | 2025-09-26 08:37:31,618 [247] [INFO] [gunicorn.access] 3.147.184.98 - - [26/Sep/2025:08:37:31 +0000] "GET /_storage_proxy_auth HTTP/1.0" 200 2 "-" "Go-http-client/1.1" gunicorn-registry stdout | 2025-09-26 08:37:31,620 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d?uploadId=68d650cbd73ec60008f935be&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:31,620 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9or2-9hm6d0-mlf', 'x-amz-id-2': 'mg0l9or2-9hm6d0-mlf', 'ETag': '"88c6cfc91e1197f9b5750e86822257d6"', 'Date': 'Fri, 26 Sep 2025 08:37:31 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:31,620 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:31,620 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,621 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:31,621 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,621 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9or2-9hm6d0-mlf', 'HostId': 'mg0l9or2-9hm6d0-mlf', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9or2-9hm6d0-mlf', 'x-amz-id-2': 'mg0l9or2-9hm6d0-mlf', 'etag': '"88c6cfc91e1197f9b5750e86822257d6"', 'date': 'Fri, 26 Sep 2025 08:37:31 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"88c6cfc91e1197f9b5750e86822257d6"'} gunicorn-registry stdout | 2025-09-26 08:37:31,621 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d', 'UploadId': '68d650cbd73ec60008f935be', 'MultipartUpload': {'Parts': [{'ETag': '"88c6cfc91e1197f9b5750e86822257d6"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:31,621 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,621 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,621 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,621 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,621 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,621 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,621 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,621 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:31,621 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:31,622 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:31,622 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:31,622 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,622 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,622 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,622 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d', 'query_string': {'uploadId': '68d650cbd73ec60008f935be'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"88c6cfc91e1197f9b5750e86822257d6"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d?uploadId=68d650cbd73ec60008f935be', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d', 'UploadId': '68d650cbd73ec60008f935be', 'MultipartUpload': {'Parts': [{'ETag': '"88c6cfc91e1197f9b5750e86822257d6"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:31,622 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,622 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,622 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,622 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,622 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:31,622 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d gunicorn-registry stdout | uploadId=68d650cbd73ec60008f935be gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:8bd238773ff469c4509f99166a71e2608b76d06ad4d045d6568db498b7be694a gunicorn-registry stdout | x-amz-date:20250926T083731Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 8bd238773ff469c4509f99166a71e2608b76d06ad4d045d6568db498b7be694a gunicorn-registry stdout | 2025-09-26 08:37:31,622 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083731Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | e031d94d2ecbf52cb668e70247063419b9ec84c5e2ea960dd13922ceb4927394 gunicorn-registry stdout | 2025-09-26 08:37:31,623 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | db89aefbacfbeed71f34dc1e46ec272d9aa760e4cf5974c434be292d4df6dcf4 gunicorn-registry stdout | 2025-09-26 08:37:31,623 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,623 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:31,623 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:31,641 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d?uploadId=68d650cbd73ec60008f935be HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:31,641 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ox4-d39k9c-1b91', 'x-amz-id-2': 'mg0l9ox4-d39k9c-1b91', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:31 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:31,641 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d"a53edc7ef6344a7ee9d5e927a23e3f85-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d?uploadId=68d650cbd73ec60008f935be' gunicorn-registry stdout | 2025-09-26 08:37:31,641 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,641 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,641 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:31,641 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,642 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9ox4-d39k9c-1b91', 'HostId': 'mg0l9ox4-d39k9c-1b91', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ox4-d39k9c-1b91', 'x-amz-id-2': 'mg0l9ox4-d39k9c-1b91', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:31 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d?uploadId=68d650cbd73ec60008f935be', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d', 'ETag': '"a53edc7ef6344a7ee9d5e927a23e3f85-1"'} gunicorn-registry stdout | 2025-09-26 08:37:31,642 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:31,642 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:31,643 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 3512801 bytes to blob 4e493911-4120-4f8b-8ecb-0ac04e1dbb97 took 0.5889537334442139 seconds gunicorn-registry stdout | 2025-09-26 08:37:31,644 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['4e493911-4120-4f8b-8ecb-0ac04e1dbb97', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,646 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '4e493911-4120-4f8b-8ecb-0ac04e1dbb97', 3512801, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwrcf/yPPwh8nL/k8XuchFLvK28v8CAAD//wWr+c8ALHAAbZp2wf8e/9NdwNvU8Xz8sfP3Xyf8365Vt3LBH6ri7CEAAAAAAAAAAM6sAQAAAAAaHxnHj0pPT7Q4GuYVUs1atLWZJIp+6VmbIK9uodXY6JRiLg==', 9, '{"chunks": [["uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d", 0, 3512801]]}', 1, 7351296, datetime.datetime(2025, 9, 26, 8, 37, 30, 992958), None, None, 76]) gunicorn-registry stdout | 2025-09-26 08:37:31,648 [251] [DEBUG] [app] Ending request: urn:request:9017099c-0457-48c2-997e-842982336338 (/v2/testorg2/alpine/blobs/uploads/4e493911-4120-4f8b-8ecb-0ac04e1dbb97) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:9017099c-0457-48c2-997e-842982336338', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/4e493911-4120-4f8b-8ecb-0ac04e1dbb97', 'path': '/v2/testorg2/alpine/blobs/uploads/4e493911-4120-4f8b-8ecb-0ac04e1dbb97', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:31,649 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:31,649 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:31,649 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:31 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/4e493911-4120-4f8b-8ecb-0ac04e1dbb97 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:31 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/4e493911-4120-4f8b-8ecb-0ac04e1dbb97 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.610 3514581 0.609) gunicorn-registry stdout | 2025-09-26 08:37:31,692 [258] [DEBUG] [app] Starting request: urn:request:19c4a229-3352-4679-b1a5-d689fe3088b7 (/v2/testorg2/alpine/blobs/uploads/4e493911-4120-4f8b-8ecb-0ac04e1dbb97) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:31,692 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '4e493911-4120-4f8b-8ecb-0ac04e1dbb97', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:31,692 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:31,692 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:31,693 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:31,693 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:31,693 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:31,693 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:31,693 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:31,694 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,695 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,696 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,697 [258] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,698 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,700 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,701 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,702 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:31,703 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['4e493911-4120-4f8b-8ecb-0ac04e1dbb97', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,704 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:31,704 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:31,704 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:31,705 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:31,706 [258] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b686e5f6-076d-4e82-8f0d-98ff526097d4', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:31,706 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,706 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,706 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,706 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,706 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,706 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,706 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,706 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,706 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:31,706 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:31,706 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:31,706 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:31,707 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,707 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,707 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,707 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/b686e5f6-076d-4e82-8f0d-98ff526097d4?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b686e5f6-076d-4e82-8f0d-98ff526097d4', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b686e5f6-076d-4e82-8f0d-98ff526097d4?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b686e5f6-076d-4e82-8f0d-98ff526097d4', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:31,707 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,707 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,707 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,707 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,708 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:31,708 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b686e5f6-076d-4e82-8f0d-98ff526097d4 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083731Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:31,708 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083731Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 39f465fb766dbbd6d0f81787e46dacfcd73173e783d2bd7ccf24089a47efb15d gunicorn-registry stdout | 2025-09-26 08:37:31,708 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | e9376fdd065e9c33b921054fbc6b7be5a1eb4943e6ea7d7a1f49e10efbbf2026 gunicorn-registry stdout | 2025-09-26 08:37:31,708 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,708 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:31,708 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:31,715 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b686e5f6-076d-4e82-8f0d-98ff526097d4?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:31,715 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ozi-eirpne-266', 'x-amz-id-2': 'mg0l9ozi-eirpne-266', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:31 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:31,715 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/b686e5f6-076d-4e82-8f0d-98ff526097d468d650cbd73ec60008f935c4' gunicorn-registry stdout | 2025-09-26 08:37:31,716 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,716 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:31,716 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,716 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9ozi-eirpne-266', 'HostId': 'mg0l9ozi-eirpne-266', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ozi-eirpne-266', 'x-amz-id-2': 'mg0l9ozi-eirpne-266', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:31 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b686e5f6-076d-4e82-8f0d-98ff526097d4', 'UploadId': '68d650cbd73ec60008f935c4'} gunicorn-registry stdout | 2025-09-26 08:37:31,716 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:31,717 [258] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b686e5f6-076d-4e82-8f0d-98ff526097d4', 'UploadId': '68d650cbd73ec60008f935c4'} gunicorn-registry stdout | 2025-09-26 08:37:31,717 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,717 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,717 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,717 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,717 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,717 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,718 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:31,718 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:31,718 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:31,718 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:31,718 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,718 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,718 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,718 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/b686e5f6-076d-4e82-8f0d-98ff526097d4', 'query_string': {'uploadId': '68d650cbd73ec60008f935c4'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b686e5f6-076d-4e82-8f0d-98ff526097d4', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b686e5f6-076d-4e82-8f0d-98ff526097d4?uploadId=68d650cbd73ec60008f935c4', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b686e5f6-076d-4e82-8f0d-98ff526097d4', 'UploadId': '68d650cbd73ec60008f935c4'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:31,718 [258] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,719 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,719 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,719 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,719 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:31,719 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b686e5f6-076d-4e82-8f0d-98ff526097d4 gunicorn-registry stdout | uploadId=68d650cbd73ec60008f935c4 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083731Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:31,719 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083731Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 582e794c02338ea153c0389aebf8ad4fc02f40c0a867442fff994358c72a127e gunicorn-registry stdout | 2025-09-26 08:37:31,719 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 64aa88e97e769781b17dab1ca06574dad43916acc524488e6a8d139827d4de4b gunicorn-registry stdout | 2025-09-26 08:37:31,719 [258] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,720 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:31,720 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:31,726 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b686e5f6-076d-4e82-8f0d-98ff526097d4?uploadId=68d650cbd73ec60008f935c4 HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:37:31,727 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ozt-ep4sbe-exz', 'x-amz-id-2': 'mg0l9ozt-ep4sbe-exz', 'Date': 'Fri, 26 Sep 2025 08:37:31 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:31,727 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:31,727 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,727 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:31,727 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,727 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9ozt-ep4sbe-exz', 'HostId': 'mg0l9ozt-ep4sbe-exz', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ozt-ep4sbe-exz', 'x-amz-id-2': 'mg0l9ozt-ep4sbe-exz', 'date': 'Fri, 26 Sep 2025 08:37:31 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:37:31,727 [258] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 4e493911-4120-4f8b-8ecb-0ac04e1dbb97 took 0.023151397705078125 seconds gunicorn-registry stdout | 2025-09-26 08:37:31,728 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['4e493911-4120-4f8b-8ecb-0ac04e1dbb97', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,730 [258] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '4e493911-4120-4f8b-8ecb-0ac04e1dbb97', 3512801, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwrcf/yPPwh8nL/k8XuchFLvK28v8CAAD//wWr+c8ALHAAbZp2wf8e/9NdwNvU8Xz8sfP3Xyf8365Vt3LBH6ri7CEAAAAAAAAAAM6sAQAAAAAaHxnHj0pPT7Q4GuYVUs1atLWZJIp+6VmbIK9uodXY6JRiLg==', 9, '{"chunks": [["uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d", 0, 3512801]]}', 2, 7351296, datetime.datetime(2025, 9, 26, 8, 37, 30, 992958), None, None, 76]) gunicorn-registry stdout | 2025-09-26 08:37:31,731 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:31,731 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:31,731 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:31,732 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:31,732 [258] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da'} gunicorn-registry stdout | 2025-09-26 08:37:31,733 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,733 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,733 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,733 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,733 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,733 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,733 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,733 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:31,733 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:31,733 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:31,733 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:31,733 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,733 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,734 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,734 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:31,734 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,734 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,734 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,734 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,734 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:31,734 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083731Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:31,734 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083731Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 29abeb4213125ea0e209cb753dea9595547a6bc32532ec6a52e70bd3297c7f45 gunicorn-registry stdout | 2025-09-26 08:37:31,734 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 8ef67d58aa4b5407d5ffae93a63ee0038d0de33aee13154e82145dbc708bda8b gunicorn-registry stdout | 2025-09-26 08:37:31,734 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,735 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:31,735 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:31,752 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:37:31,752 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9p08-ey2mb2-n59', 'x-amz-id-2': 'mg0l9p08-ey2mb2-n59', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:31 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:31,752 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:31,752 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,753 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:31,753 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,753 [258] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:37:31,753 [258] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:37:31,753 [258] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da gunicorn-registry stdout | 2025-09-26 08:37:31,753 [258] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:31,754 [258] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:31,754 [258] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:31,754 [258] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:37:31,754 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,754 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,754 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,754 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,754 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,754 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,754 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,754 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:31,754 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:31,754 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:31,754 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:31,754 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,754 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,754 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,754 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:31,754 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,755 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,755 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,755 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,755 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,755 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:31,755 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083731Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:31,755 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083731Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 9398e60cce74389bc78fc9c0529104757604fb2d777253acc6350bd38ce675a6 gunicorn-registry stdout | 2025-09-26 08:37:31,755 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 5cfc9d49bf4a3498f7451cf024b1b0f8d90bd146cadc6480249103bac627dc68 gunicorn-registry stdout | 2025-09-26 08:37:31,755 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,755 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,755 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:31,755 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:31,773 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:31,773 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9p15-fhi10m-11y3', 'x-amz-id-2': 'mg0l9p15-fhi10m-11y3', 'ETag': '"a53edc7ef6344a7ee9d5e927a23e3f85-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:31 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '3512801', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:31 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:31,773 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:31,774 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,774 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:31,774 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,774 [258] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:37:31,774 [258] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:31,774 [258] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:31,775 [258] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:31,775 [258] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 'extra_args': {}, 'callbacks': [], 'size': 3512801} gunicorn-registry stdout | 2025-09-26 08:37:31,775 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,775 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,775 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,775 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,775 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,775 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,775 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,775 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,775 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,775 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,775 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:31,775 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:31,775 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:31,775 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:31,775 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,775 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,776 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,776 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:31,776 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,776 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,776 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,776 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,776 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,776 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:31,776 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/b3ff25f2-3a55-4258-a1c7-7c9c7407ab5d gunicorn-registry stdout | x-amz-date:20250926T083731Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:31,776 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083731Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | a7c89cf9ae77ecc858e874cf9b14c15cb05f11e869acc889c5b516176e2bb5fd gunicorn-registry stdout | 2025-09-26 08:37:31,776 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | b154361b62a2c5f08f9ddfe69cc585a22d88c3ce8545a8a4f89b4b1a6fa6e4c8 gunicorn-registry stdout | 2025-09-26 08:37:31,776 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,776 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,776 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:31,777 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:31,777 [258] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:31,943 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:37:31,943 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9p1e-fmvqy9-t3a', 'x-amz-id-2': 'mg0l9p1e-fmvqy9-t3a', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:37:31 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:31,943 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:37:31.000Z"a53edc7ef6344a7ee9d5e927a23e3f85-1"' gunicorn-registry stdout | 2025-09-26 08:37:31,944 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,944 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:31,944 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:31,944 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:31,944 [258] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:31,945 [258] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 4e493911-4120-4f8b-8ecb-0ac04e1dbb97 with digest sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da took 0.19188904762268066 seconds gunicorn-registry stdout | 2025-09-26 08:37:31,946 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['4e493911-4120-4f8b-8ecb-0ac04e1dbb97', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,947 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,949 [258] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['16f70353-441f-4697-93cc-00fbdb7cec9f', 3512801, 7351296, True, True, 'sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da']) gunicorn-registry stdout | 2025-09-26 08:37:31,950 [258] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [77, 9]) gunicorn-registry stdout | 2025-09-26 08:37:31,951 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:31,951 [258] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [3, 77, datetime.datetime(2025, 9, 26, 8, 37, 31, 951634), datetime.datetime(2025, 9, 26, 9, 37, 31, 951618)]) gunicorn-registry stdout | 2025-09-26 08:37:31,952 [258] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [76]) gunicorn-registry stdout | 2025-09-26 08:37:31,954 [258] [DEBUG] [app] Ending request: urn:request:19c4a229-3352-4679-b1a5-d689fe3088b7 (/v2/testorg2/alpine/blobs/uploads/4e493911-4120-4f8b-8ecb-0ac04e1dbb97) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:19c4a229-3352-4679-b1a5-d689fe3088b7', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/4e493911-4120-4f8b-8ecb-0ac04e1dbb97?digest=sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 'path': '/v2/testorg2/alpine/blobs/uploads/4e493911-4120-4f8b-8ecb-0ac04e1dbb97', 'parameters': {'digest': 'sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:31,954 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:31,954 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:31,954 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:31 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/4e493911-4120-4f8b-8ecb-0ac04e1dbb97?digest=sha256%3Acbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:31 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/4e493911-4120-4f8b-8ecb-0ac04e1dbb97?digest=sha256%3Acbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.264 1853 0.264) nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:32 +0000] "GET /_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrNXJWRkY2T1RWeFlXOWFSVWxDTUhGbVZ6UkpNa3BGUTJaUGJrYzBkMGR0Ym1kemJuSjRabXhhVEZFaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EVXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE5URXNJbVY0Y0NJNk1UYzFPRGczTmpRMU1Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE5TOWhOVFZtTW1aaU9EbGtZVFJqWVdGbE1HUTNPRE5qTURBME5XRTJOelEwTm1SbFpUbGlZbVE1TnpkbVpXTmlORFJrWWpsbE1USXpNVFUxTUdaaE9EZzRQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFtUzNsVGFXODNSMnB3Y1VSV2NtNTJjSGt6UzBGd01IZDRiMjhsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRVeElpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuVkNXcTBtaEtYX0tMR3o5bjlQbGJ4M2xfM0t2cENmaHZKdWZyUThBdHd0NjU1QVdrZ1pDVnFFaDN6dVRFczRSU2NuTFhpN0tsRjhYME1US18yWjlqNlRTUlFLRTVhS3M0LW9aWklCb3QwaWpVN3pfcnR5cU9YZEpKUlVWb3Jia2NBOGRPaTJxdXBOZ3pvenI5ZWFFbHp3WllTenJWdFNrNHdHV2UzdEVCWkdDNk5TYUZlNVY4eXpwbXluODcxdTRsZEdoMnNJM0lyNVFXZnR5RnJ3U1hleVFSZ05TZjduRURsdk82ZlJKU3NoWnR1NUJIeFNsOEdlMjY1dEw0SXNTRXBZZjlQWTlrUnpOVEw3OWVuNkFIUzc1QzZJSm9XOHVIVjJQRFZRbTdKVmIzZlBnTDR2clYzc1hmaEEyVHAwNVFMVXJ1bndwc1BsR3hXNWVKTzBMcEFn/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a5/a55f2fb89da4caae0d783c0045a67446dee9bbd977fecb44db9e1231550fa888?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=fKySio7GjpqDVrnvpy3KAp0wxoo%3D&Expires=1758876451 HTTP/1.1" 200 3608836 "-" "Go-http-client/1.1" (0.414 2403 0.408) gunicorn-registry stdout | 2025-09-26 08:37:32,097 [251] [DEBUG] [app] Starting request: urn:request:fbed4895-a956-45b9-845e-7f8c5dd04cc0 (/v2/testorg2/alpine/blobs/sha256:fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:32,097 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:32,097 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:32,097 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:32,098 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:32,098 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:32,098 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:32,098 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:32,098 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:32,099 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,100 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,101 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:32,101 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86_2 gunicorn-registry stdout | 2025-09-26 08:37:32,101 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:32,102 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,104 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,104 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,105 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,107 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,107 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86_2: None gunicorn-registry stdout | 2025-09-26 08:37:32,107 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86_2: None gunicorn-registry stdout | 2025-09-26 08:37:32,108 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:32,108 [251] [DEBUG] [app] Ending request: urn:request:fbed4895-a956-45b9-845e-7f8c5dd04cc0 (/v2/testorg2/alpine/blobs/sha256:fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:fbed4895-a956-45b9-845e-7f8c5dd04cc0', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86', 'path': '/v2/testorg2/alpine/blobs/sha256:fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:32,108 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:32,108 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:32,108 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:32 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:32 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.012 1718 0.012) proxycacheblobworker stdout | 2025-09-26 08:37:32,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:37:32,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:42.477454+00:00 (in 9.999511 seconds) proxycacheblobworker stdout | 2025-09-26 08:37:32,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:42 GMT)" (scheduled at 2025-09-26 08:37:32.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:37:32,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:37:32,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 37, 32, 478347), True, datetime.datetime(2025, 9, 26, 8, 37, 32, 478347), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:37:32,487 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:37:32,487 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:37:32,487 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:42 GMT)" executed successfully storagereplication stdout | 2025-09-26 08:37:32,564 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} gunicorn-registry stdout | 2025-09-26 08:37:32,715 [258] [DEBUG] [app] Starting request: urn:request:b9cba040-4775-4806-ae58-caafd321ad3f (/v2/testorg2/alpine/manifests/sha256:5938519b4c46e95da0bb5accefcb8f3b5dde38f421b557ba2ff3f70d59706ab9) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:32,715 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'manifest_ref': 'sha256:5938519b4c46e95da0bb5accefcb8f3b5dde38f421b557ba2ff3f70d59706ab9', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:32,716 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:32,716 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:32,717 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:32,717 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:32,717 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:32,717 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:32,717 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:32,718 [258] [DEBUG] [data.cache.cache_key] Loading repository lookup from cache_key: repository_lookup_testorg2_alpine gunicorn-registry stdout | 2025-09-26 08:37:32,718 [258] [DEBUG] [data.cache.impl] Checking cache for key repository_lookup_testorg2_alpine gunicorn-registry stdout | 2025-09-26 08:37:32,718 [258] [DEBUG] [data.cache.impl] Found result in cache for key repository_lookup_testorg2_alpine: {'id': 3, 'visibility': {'id': 2, 'name': 'private'}, 'kind': {'id': 1, 'name': 'image'}, 'state': 0, 'namespace_user': {'stripe_id': None}} gunicorn-registry stdout | 2025-09-26 08:37:32,720 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."repository_id" = %s) AND ("t1"."digest" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:5938519b4c46e95da0bb5accefcb8f3b5dde38f421b557ba2ff3f70d59706ab9', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,721 [258] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL (SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "uploadedblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1")', [3, 'sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 1, 3, 'sha256:fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86', 1]) gunicorn-registry stdout | 2025-09-26 08:37:32,723 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."digest" = %s) AND ("t1"."repository_id" = %s)) LIMIT %s OFFSET %s', ['sha256:5938519b4c46e95da0bb5accefcb8f3b5dde38f421b557ba2ff3f70d59706ab9', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,724 [258] [DEBUG] [peewee] ('INSERT INTO "manifest" ("repository_id", "digest", "media_type_id", "manifest_bytes", "config_media_type", "layers_compressed_size", "subject", "subject_backfilled", "artifact_type", "artifact_type_backfilled") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifest"."id"', [3, 'sha256:5938519b4c46e95da0bb5accefcb8f3b5dde38f421b557ba2ff3f70d59706ab9', 18, '{\n "schemaVersion": 2,\n "mediaType": "application/vnd.oci.image.manifest.v1+json",\n "config": {\n "mediaType": "application/vnd.oci.image.config.v1+json",\n "digest": "sha256:fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86",\n "size": 584\n },\n "layers": [\n {\n "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",\n "digest": "sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da",\n "size": 3512801\n }\n ],\n "annotations": {\n "com.docker.official-images.bashbrew.arch": "riscv64",\n "org.opencontainers.image.base.name": "scratch",\n "org.opencontainers.image.created": "2025-07-15T11:01:16Z",\n "org.opencontainers.image.revision": "01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e",\n "org.opencontainers.image.source": "https://github.com/alpinelinux/docker-alpine.git#01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e:riscv64",\n "org.opencontainers.image.url": "https://hub.docker.com/_/alpine",\n "org.opencontainers.image.version": "3.22.1"\n }\n}', 'application/vnd.oci.image.config.v1+json', 3512801, None, True, None, True]) gunicorn-registry stdout | 2025-09-26 08:37:32,725 [258] [DEBUG] [peewee] ('INSERT INTO "manifestblob" ("repository_id", "manifest_id", "blob_id") VALUES (%s, %s, %s), (%s, %s, %s) RETURNING "manifestblob"."id"', [3, 31, 77, 3, 31, 78]) gunicorn-registry stdout | 2025-09-26 08:37:32,726 [258] [DEBUG] [peewee] ('SELECT "t1"."namespace_user_id" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,726 [258] [DEBUG] [peewee] ('SELECT 1 FROM "user" AS "t1" WHERE ((("t1"."id" = %s) AND "t1"."enabled") AND NOT "t1"."robot") LIMIT %s', [4, 1]) gunicorn-registry stdout | 2025-09-26 08:37:32,727 [258] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [4, 77, 31, 1]) gunicorn-registry stdout | 2025-09-26 08:37:32,728 [258] [DEBUG] [peewee] ('SELECT 1 FROM "manifestblob" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ((("t2"."namespace_user_id" = %s) AND ("t1"."blob_id" = %s)) AND ("t1"."manifest_id" != %s)) LIMIT %s', [4, 78, 31, 1]) gunicorn-registry stdout | 2025-09-26 08:37:32,730 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,730 [258] [INFO] [data.model.quota] updating namespace size for manifest 31 in namespace 4, QuotaOperation.ADD 3513385 gunicorn-registry stdout | 2025-09-26 08:37:32,730 [258] [DEBUG] [peewee] ('UPDATE "quotanamespacesize" SET "size_bytes" = ("quotanamespacesize"."size_bytes" + %s) WHERE ("quotanamespacesize"."namespace_user_id" = %s)', [3513385, 4]) gunicorn-registry stdout | 2025-09-26 08:37:32,731 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotarepositorysize" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,731 [258] [INFO] [data.model.quota] updating repository size for manifest 31 in repository 3, QuotaOperation.ADD 3513385 gunicorn-registry stdout | 2025-09-26 08:37:32,731 [258] [DEBUG] [peewee] ('UPDATE "quotarepositorysize" SET "size_bytes" = ("quotarepositorysize"."size_bytes" + %s) WHERE ("quotarepositorysize"."repository_id" = %s)', [3513385, 3]) gunicorn-registry stdout | 2025-09-26 08:37:32,732 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE (("t1"."manifest_id" = %s) AND (("t1"."lifetime_end_ms" IS %s) OR ("t1"."lifetime_end_ms" >= %s))) LIMIT %s OFFSET %s', [31, None, 1758879452732, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,733 [258] [DEBUG] [peewee] ('INSERT INTO "tag" ("name", "repository_id", "manifest_id", "lifetime_start_ms", "lifetime_end_ms", "immutable", "hidden", "reversion", "tag_kind_id") VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING "tag"."id"', ['$temp-e0b3819a-cf48-45ab-ab39-142a3243651d', 3, 31, 1758875852732, 1758879452732, False, True, False, 1]) gunicorn-registry stdout | 2025-09-26 08:37:32,735 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,736 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['95e26042-e014-4f93-bb24-49057896bbbc']) gunicorn-registry stdout | 2025-09-26 08:37:32,737 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:32,738 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:32,738 [258] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/fd/fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86'} gunicorn-registry stdout | 2025-09-26 08:37:32,738 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:32,738 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:32,738 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:32,738 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:32,738 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:32,738 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:32,738 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:32,739 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:32,739 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:32,739 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:32,739 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:32,739 [258] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:32,739 [258] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:32,739 [258] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:32,739 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/fd/fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fd/fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fd/fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/fd/fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:32,739 [258] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:32,739 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:32,739 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:32,739 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:32,739 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:32,739 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | GET gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fd/fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083732Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:32,739 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083732Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 1fc863c36489bfa2d01b23dc539aae8d1684b0944e1b771fcafb43094c633b01 gunicorn-registry stdout | 2025-09-26 08:37:32,739 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | e506c9597a26fbc2dcd09e07f362ff8f131c47042c68fbafdf251ec1969d7c9e gunicorn-registry stdout | 2025-09-26 08:37:32,740 [258] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:32,740 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:32,740 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:32,786 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fd/fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86 HTTP/1.1" 200 584 gunicorn-registry stdout | 2025-09-26 08:37:32,786 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ps5-f0yzz9-12gp', 'x-amz-id-2': 'mg0l9ps5-f0yzz9-12gp', 'ETag': '"00318939fab3984e597fce89e3a44d6f-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:32 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '584', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:32 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:32,786 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | gunicorn-registry stdout | 2025-09-26 08:37:32,786 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:32,786 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:32,786 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:32,787 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9ps5-f0yzz9-12gp', 'HostId': 'mg0l9ps5-f0yzz9-12gp', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ps5-f0yzz9-12gp', 'x-amz-id-2': 'mg0l9ps5-f0yzz9-12gp', 'etag': '"00318939fab3984e597fce89e3a44d6f-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:32 GMT', 'content-type': 'application/octet-stream', 'content-length': '584', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:32 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 32, tzinfo=tzutc()), 'ContentLength': 584, 'ETag': '"00318939fab3984e597fce89e3a44d6f-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } gunicorn-registry stdout | 2025-09-26 08:37:32,788 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [31, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,789 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['888c28f7-7f50-40b6-b5cc-66721f73c6e2', 'com.docker.official-images.bashbrew.arch', 'riscv64', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:32,790 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 31, 99]) gunicorn-registry stdout | 2025-09-26 08:37:32,792 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [31, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,793 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['247a2c14-5ad3-44d9-aad0-5d24c52ee115', 'org.opencontainers.image.base.name', 'scratch', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:32,793 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 31, 100]) gunicorn-registry stdout | 2025-09-26 08:37:32,795 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [31, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,797 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['9cbbd218-873b-46aa-8fca-2d90c6dd8497', 'org.opencontainers.image.created', '2025-07-15T11:01:16Z', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:32,797 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 31, 101]) gunicorn-registry stdout | 2025-09-26 08:37:32,799 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [31, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,800 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['2aa16bf6-ab0c-4fb2-89ef-4dfe9f6ac4e8', 'org.opencontainers.image.revision', '01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:32,801 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 31, 102]) gunicorn-registry stdout | 2025-09-26 08:37:32,802 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [31, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,804 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['eebe673d-cb00-4e06-bb1a-4e6678c2936a', 'org.opencontainers.image.source', 'https://github.com/alpinelinux/docker-alpine.git#01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e:riscv64', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:32,805 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 31, 103]) gunicorn-registry stdout | 2025-09-26 08:37:32,806 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [31, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,808 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['972bc653-e790-4bb8-b86b-40097fe01ae3', 'org.opencontainers.image.url', 'https://hub.docker.com/_/alpine', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:32,809 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 31, 104]) gunicorn-registry stdout | 2025-09-26 08:37:32,812 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."namespace_user_id", "t2"."name", "t2"."visibility_id", "t2"."description", "t2"."badge_token", "t2"."kind_id", "t2"."trust_enabled", "t2"."state" FROM "manifest" AS "t1" INNER JOIN "repository" AS "t2" ON ("t1"."repository_id" = "t2"."id") WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [31, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,813 [258] [DEBUG] [peewee] ('INSERT INTO "label" ("uuid", "key", "value", "media_type_id", "source_type_id") VALUES (%s, %s, %s, %s, %s) RETURNING "label"."id"', ['9ded1cd3-a290-427f-8a52-959a254efc46', 'org.opencontainers.image.version', '3.22.1', 1, 1]) gunicorn-registry stdout | 2025-09-26 08:37:32,813 [258] [DEBUG] [peewee] ('INSERT INTO "manifestlabel" ("repository_id", "manifest_id", "label_id") VALUES (%s, %s, %s) RETURNING "manifestlabel"."id"', [3, 31, 105]) gunicorn-registry stdout | 2025-09-26 08:37:32,815 [258] [DEBUG] [app] Ending request: urn:request:b9cba040-4775-4806-ae58-caafd321ad3f (/v2/testorg2/alpine/manifests/sha256:5938519b4c46e95da0bb5accefcb8f3b5dde38f421b557ba2ff3f70d59706ab9) {'endpoint': 'v2.write_manifest_by_digest', 'request_id': 'urn:request:b9cba040-4775-4806-ae58-caafd321ad3f', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/manifests/sha256:5938519b4c46e95da0bb5accefcb8f3b5dde38f421b557ba2ff3f70d59706ab9', 'path': '/v2/testorg2/alpine/manifests/sha256:5938519b4c46e95da0bb5accefcb8f3b5dde38f421b557ba2ff3f70d59706ab9', 'parameters': {}, 'json_body': {'schemaVersion': 2, 'mediaType': 'application/vnd.oci.image.manifest.v1+json', 'config': {'mediaType': 'application/vnd.oci.image.config.v1+json', 'digest': 'sha256:fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86', 'size': 584}, 'layers': [{'mediaType': 'application/vnd.oci.image.layer.v1.tar+gzip', 'digest': 'sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 'size': 3512801}], 'annotations': {'com.docker.official-images.bashbrew.arch': 'riscv64', 'org.opencontainers.image.base.name': 'scratch', 'org.opencontainers.image.created': '2025-07-15T11:01:16Z', 'org.opencontainers.image.revision': '01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e', 'org.opencontainers.image.source': 'https://github.com/alpinelinux/docker-alpine.git#01dd5fbd09e25f6c040627eedf18bbfccfa9ad6e:riscv64', 'org.opencontainers.image.url': 'https://hub.docker.com/_/alpine', 'org.opencontainers.image.version': '3.22.1'}}, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:32,816 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:32,816 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:32 +0000] "PUT /v2/testorg2/alpine/manifests/sha256:5938519b4c46e95da0bb5accefcb8f3b5dde38f421b557ba2ff3f70d59706ab9 HTTP/1.1" 201 2 "-" "skopeo/1.14.5" (0.102 2849 0.102) gunicorn-registry stdout | 2025-09-26 08:37:32,816 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:32 +0000] "PUT /v2/testorg2/alpine/manifests/sha256:5938519b4c46e95da0bb5accefcb8f3b5dde38f421b557ba2ff3f70d59706ab9 HTTP/1.1" 201 2 "-" "skopeo/1.14.5" namespacegcworker stdout | 2025-09-26 08:37:32,957 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-registry stdout | 2025-09-26 08:37:32,990 [251] [DEBUG] [app] Starting request: urn:request:7a6688b4-76f8-40ac-9b14-c58d82c8b2aa (/v2/testorg2/alpine/blobs/sha256:d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:32,990 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:32,991 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:32,991 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:32,991 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:32,991 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:32,992 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:32,992 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:32,992 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:32,992 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,994 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,995 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:32,995 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021_2 gunicorn-registry stdout | 2025-09-26 08:37:32,995 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:32,996 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,997 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,998 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:32,999 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,000 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,001 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021_2: None gunicorn-registry stdout | 2025-09-26 08:37:33,001 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021_2: None gunicorn-registry stdout | 2025-09-26 08:37:33,001 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:33,002 [251] [DEBUG] [app] Ending request: urn:request:7a6688b4-76f8-40ac-9b14-c58d82c8b2aa (/v2/testorg2/alpine/blobs/sha256:d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:7a6688b4-76f8-40ac-9b14-c58d82c8b2aa', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021', 'path': '/v2/testorg2/alpine/blobs/sha256:d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:33,002 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:33,002 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:33,002 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:33 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:33 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.013 1718 0.013) gunicorn-registry stdout | 2025-09-26 08:37:33,163 [251] [DEBUG] [app] Starting request: urn:request:2fb27334-6325-421c-8afe-b9bffd92f353 (/v2/testorg2/alpine/blobs/sha256:3e6038a336055d76ae316ad8dabbe9b1d6697a955edde70eddc2f11123344af5) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:33,163 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:3e6038a336055d76ae316ad8dabbe9b1d6697a955edde70eddc2f11123344af5', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:33,163 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:33,164 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:33,165 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:33,165 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:33,165 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:33,165 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:33,165 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:33,165 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,167 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,168 [251] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:33,168 [251] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:3e6038a336055d76ae316ad8dabbe9b1d6697a955edde70eddc2f11123344af5_2 gunicorn-registry stdout | 2025-09-26 08:37:33,168 [251] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:3e6038a336055d76ae316ad8dabbe9b1d6697a955edde70eddc2f11123344af5_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:33,169 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,170 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,171 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,172 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:3e6038a336055d76ae316ad8dabbe9b1d6697a955edde70eddc2f11123344af5', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,173 [251] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:3e6038a336055d76ae316ad8dabbe9b1d6697a955edde70eddc2f11123344af5', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,174 [251] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:3e6038a336055d76ae316ad8dabbe9b1d6697a955edde70eddc2f11123344af5_2: None gunicorn-registry stdout | 2025-09-26 08:37:33,174 [251] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:3e6038a336055d76ae316ad8dabbe9b1d6697a955edde70eddc2f11123344af5_2: None gunicorn-registry stdout | 2025-09-26 08:37:33,174 [251] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:33,174 [251] [DEBUG] [app] Ending request: urn:request:2fb27334-6325-421c-8afe-b9bffd92f353 (/v2/testorg2/alpine/blobs/sha256:3e6038a336055d76ae316ad8dabbe9b1d6697a955edde70eddc2f11123344af5) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:2fb27334-6325-421c-8afe-b9bffd92f353', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:3e6038a336055d76ae316ad8dabbe9b1d6697a955edde70eddc2f11123344af5', 'path': '/v2/testorg2/alpine/blobs/sha256:3e6038a336055d76ae316ad8dabbe9b1d6697a955edde70eddc2f11123344af5', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:33,174 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:33,174 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:33,175 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:33 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:3e6038a336055d76ae316ad8dabbe9b1d6697a955edde70eddc2f11123344af5 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:33 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:3e6038a336055d76ae316ad8dabbe9b1d6697a955edde70eddc2f11123344af5 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.012 1718 0.011) gunicorn-web stdout | 2025-09-26 08:37:33,199 [247] [DEBUG] [app] Starting request: urn:request:acfb829c-cf78-4b7c-a53e-37724b9f7f55 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:37:33,200 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:37:33,202 [258] [DEBUG] [app] Starting request: urn:request:df8be21c-a87b-418b-9664-35581b6e888d (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:37:33,202 [258] [DEBUG] [app] Ending request: urn:request:df8be21c-a87b-418b-9664-35581b6e888d (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:df8be21c-a87b-418b-9664-35581b6e888d', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:37:33,203 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:37:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:37:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:37:33,203 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:37:33,204 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:37:33,205 [249] [DEBUG] [app] Starting request: urn:request:27df17e6-0cad-4bc2-912a-7edb16771d7e (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:37:33,206 [249] [DEBUG] [app] Ending request: urn:request:27df17e6-0cad-4bc2-912a-7edb16771d7e (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:27df17e6-0cad-4bc2-912a-7edb16771d7e', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:37:33,206 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:37:33 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:37:33 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.002) gunicorn-web stdout | 2025-09-26 08:37:33,206 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:37:33,207 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:37:33,207 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:37:33,207 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:37:33,211 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:37:33,211 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-registry stdout | 2025-09-26 08:37:33,214 [258] [DEBUG] [app] Starting request: urn:request:902cc11d-ad8a-4d71-b176-7f14fef44250 (/v2/testorg2/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:33,214 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:33,214 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:33,214 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:33,216 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:33,216 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:33,216 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:33,216 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:33,216 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-web stdout | 2025-09-26 08:37:33,216 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:37:33,217 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-registry stdout | 2025-09-26 08:37:33,217 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-web stdout | 2025-09-26 08:37:33,218 [247] [DEBUG] [app] Ending request: urn:request:acfb829c-cf78-4b7c-a53e-37724b9f7f55 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:acfb829c-cf78-4b7c-a53e-37724b9f7f55', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:37:33,218 [247] [DEBUG] [data.database] Disconnecting from database. nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:37:33 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.020 118 0.020) gunicorn-web stdout | 2025-09-26 08:37:33,218 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:37:33 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" gunicorn-registry stdout | 2025-09-26 08:37:33,219 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,219 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,221 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,222 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,223 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,225 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:33,225 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,226 [258] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [3, '82bd8b29-adcf-4aec-bdb7-31061e7cad45', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 37, 33, 226542)]) gunicorn-registry stdout | 2025-09-26 08:37:33,228 [258] [DEBUG] [app] Ending request: urn:request:902cc11d-ad8a-4d71-b176-7f14fef44250 (/v2/testorg2/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:902cc11d-ad8a-4d71-b176-7f14fef44250', 'remote_addr': '10.129.4.11', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/', 'path': '/v2/testorg2/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:33,228 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:33,229 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:33 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.016 1697 0.016) gunicorn-registry stdout | 2025-09-26 08:37:33,229 [258] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:33 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" gunicorn-web stdout | 2025-09-26 08:37:33,262 [247] [DEBUG] [app] Starting request: urn:request:3852a0e1-48e3-491c-a735-862d016972cb (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:37:33,263 [251] [DEBUG] [app] Starting request: urn:request:de4fef41-8fab-4bea-9297-a98608294f46 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:37:33,264 [251] [DEBUG] [app] Ending request: urn:request:de4fef41-8fab-4bea-9297-a98608294f46 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:de4fef41-8fab-4bea-9297-a98608294f46', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:37:33,264 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:37:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:37:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:37:33,264 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:37:33,265 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:37:33,267 [249] [DEBUG] [app] Starting request: urn:request:09ce6ea2-d41f-4fdb-b3dd-1b3c5125c56e (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:37:33,267 [249] [DEBUG] [app] Ending request: urn:request:09ce6ea2-d41f-4fdb-b3dd-1b3c5125c56e (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:09ce6ea2-d41f-4fdb-b3dd-1b3c5125c56e', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:37:33,267 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:37:33 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:37:33,268 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:37:33,268 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:37:33,268 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:37:33 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:37:33,268 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:37:33,273 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:37:33,273 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:37:33,277 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:37:33,278 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:37:33,278 [247] [DEBUG] [app] Ending request: urn:request:3852a0e1-48e3-491c-a735-862d016972cb (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:3852a0e1-48e3-491c-a735-862d016972cb', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:37:33,279 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:37:33,279 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:37:33 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:37:33 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.018 118 0.018) gunicorn-registry stdout | 2025-09-26 08:37:33,309 [251] [DEBUG] [app] Starting request: urn:request:4e1cfe0e-8294-4929-8617-f9fbbdb23427 (/v2/testorg2/alpine/blobs/uploads/e64670db-0179-44ac-9a75-4b097765342e) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:33,309 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'e64670db-0179-44ac-9a75-4b097765342e', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:33,309 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:33,309 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:33,310 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:33,310 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:33,310 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:33,310 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:33,310 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:33,311 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,312 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,313 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,314 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,315 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,316 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,317 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,318 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:33,320 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['e64670db-0179-44ac-9a75-4b097765342e', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,321 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:33,321 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:33,321 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:33,322 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:33,322 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:33,322 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,322 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,322 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,323 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,323 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,323 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,323 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,323 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,323 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:33,323 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:33,323 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:33,323 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:33,323 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,323 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,323 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,323 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:33,323 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,323 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,323 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,323 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,324 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:33,324 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083733Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:33,324 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083733Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 6e051cbb6edfe95a08a3b6c3b98038e1dd5a24c31a3337eb1e5f54134ff5ac4b gunicorn-registry stdout | 2025-09-26 08:37:33,324 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 8926bef54cd2b59a9666b2c315ff9be921405e12e7503464a681ee85acacfa04 gunicorn-registry stdout | 2025-09-26 08:37:33,324 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,324 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:33,324 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:33,334 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:33,334 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9q8e-85ukdk-10jx', 'x-amz-id-2': 'mg0l9q8e-85ukdk-10jx', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:33 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:33,334 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb668d650cdd73ec60008f935d2' gunicorn-registry stdout | 2025-09-26 08:37:33,334 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,335 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:33,335 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,335 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9q8e-85ukdk-10jx', 'HostId': 'mg0l9q8e-85ukdk-10jx', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9q8e-85ukdk-10jx', 'x-amz-id-2': 'mg0l9q8e-85ukdk-10jx', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:33 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6', 'UploadId': '68d650cdd73ec60008f935d2'} gunicorn-registry stdout | 2025-09-26 08:37:33,335 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:33,385 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:33,385 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:33,385 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6', 'UploadId': '68d650cdd73ec60008f935d2', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b894f740>, 'ContentLength': 79035} gunicorn-registry stdout | 2025-09-26 08:37:33,385 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,385 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,385 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,385 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,386 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,386 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,386 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,386 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,386 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:33,386 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:33,386 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:33,386 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:33,386 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,386 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,386 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:33,386 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,386 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,386 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6', 'query_string': {'uploadId': '68d650cdd73ec60008f935d2', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '79035', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': '5P9lu5jg90QM0/HxHGuJdg==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b894f740>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6?uploadId=68d650cdd73ec60008f935d2&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6', 'UploadId': '68d650cdd73ec60008f935d2', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b894f740>, 'ContentLength': 79035}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:33,386 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,386 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,387 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,387 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,387 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:33,387 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6 gunicorn-registry stdout | partNumber=1&uploadId=68d650cdd73ec60008f935d2 gunicorn-registry stdout | content-length:79035 gunicorn-registry stdout | content-md5:5P9lu5jg90QM0/HxHGuJdg== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083733Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:33,387 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083733Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | b98c63c0fa704eb77f2186d60fbb8419c7a1ff2cd22d6a99868bbb15faee3c9a gunicorn-registry stdout | 2025-09-26 08:37:33,387 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 964906e22c751b2a7e52c6ddc94d9761954ea327df1f5e3bf8c01b10bbd28708 gunicorn-registry stdout | 2025-09-26 08:37:33,387 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,387 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:33,387 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:33,388 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:37:33,389 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:37:33,485 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6?uploadId=68d650cdd73ec60008f935d2&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:33,485 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9qa4-9726ly-gdk', 'x-amz-id-2': 'mg0l9qa4-9726ly-gdk', 'ETag': '"e4ff65bb98e0f7440cd3f1f11c6b8976"', 'Date': 'Fri, 26 Sep 2025 08:37:33 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:33,485 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:33,485 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,486 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:33,486 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,486 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9qa4-9726ly-gdk', 'HostId': 'mg0l9qa4-9726ly-gdk', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9qa4-9726ly-gdk', 'x-amz-id-2': 'mg0l9qa4-9726ly-gdk', 'etag': '"e4ff65bb98e0f7440cd3f1f11c6b8976"', 'date': 'Fri, 26 Sep 2025 08:37:33 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"e4ff65bb98e0f7440cd3f1f11c6b8976"'} gunicorn-registry stdout | 2025-09-26 08:37:33,486 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6', 'UploadId': '68d650cdd73ec60008f935d2', 'MultipartUpload': {'Parts': [{'ETag': '"e4ff65bb98e0f7440cd3f1f11c6b8976"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:33,486 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,486 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,486 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,486 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,486 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,486 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,486 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,486 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:33,486 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:33,486 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:33,486 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:33,486 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,487 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,487 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,487 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6', 'query_string': {'uploadId': '68d650cdd73ec60008f935d2'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"e4ff65bb98e0f7440cd3f1f11c6b8976"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6?uploadId=68d650cdd73ec60008f935d2', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6', 'UploadId': '68d650cdd73ec60008f935d2', 'MultipartUpload': {'Parts': [{'ETag': '"e4ff65bb98e0f7440cd3f1f11c6b8976"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:33,487 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,487 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,487 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,487 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,487 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:33,487 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6 gunicorn-registry stdout | uploadId=68d650cdd73ec60008f935d2 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:954a07d112c0e5292fd9f372a627c1f739779e874028e1aca3482f811626729f gunicorn-registry stdout | x-amz-date:20250926T083733Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 954a07d112c0e5292fd9f372a627c1f739779e874028e1aca3482f811626729f gunicorn-registry stdout | 2025-09-26 08:37:33,487 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083733Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 4c958be7258d17bf87d8bd6a74e019ceb5ff16dd71081cc06e49b540df4ebf87 gunicorn-registry stdout | 2025-09-26 08:37:33,487 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 892bdf86c3a01672e7b007269f8b2089e714116340817f2ae33622759d9abb05 gunicorn-registry stdout | 2025-09-26 08:37:33,487 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,487 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:33,488 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:33,503 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6?uploadId=68d650cdd73ec60008f935d2 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:33,504 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9qcx-aut6re-130a', 'x-amz-id-2': 'mg0l9qcx-aut6re-130a', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:33 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:33,504 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6"7b4e0b64949e58dfef3ca6165d2fc87e-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6?uploadId=68d650cdd73ec60008f935d2' gunicorn-registry stdout | 2025-09-26 08:37:33,504 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,504 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,504 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:33,504 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,504 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9qcx-aut6re-130a', 'HostId': 'mg0l9qcx-aut6re-130a', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9qcx-aut6re-130a', 'x-amz-id-2': 'mg0l9qcx-aut6re-130a', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:33 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6?uploadId=68d650cdd73ec60008f935d2', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6', 'ETag': '"7b4e0b64949e58dfef3ca6165d2fc87e-1"'} gunicorn-registry stdout | 2025-09-26 08:37:33,504 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:33,505 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:33,505 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 79035 bytes to blob e64670db-0179-44ac-9a75-4b097765342e took 0.18456268310546875 seconds gunicorn-registry stdout | 2025-09-26 08:37:33,506 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['e64670db-0179-44ac-9a75-4b097765342e', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,507 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, 'e64670db-0179-44ac-9a75-4b097765342e', 79035, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwM2ZjNmE0ZjhlYzk2ZGQxMzU4IiwicmVsYXRpb25zaGlwVHlwZSI6IkdFTkVSQVRFRF9GUk9NIn1dfX1iMjIxNTsAAAAAAAAAAKQJAAAAAACTW6xzQaiHV73Mwiw2H+6LCaWaaO9oqjK04waHtoFNIpRiLg==', 9, '{"chunks": [["uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6", 0, 79035]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 37, 33, 260293), None, None, 79]) gunicorn-registry stdout | 2025-09-26 08:37:33,509 [251] [DEBUG] [app] Ending request: urn:request:4e1cfe0e-8294-4929-8617-f9fbbdb23427 (/v2/testorg2/alpine/blobs/uploads/e64670db-0179-44ac-9a75-4b097765342e) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:4e1cfe0e-8294-4929-8617-f9fbbdb23427', 'remote_addr': '10.129.4.11', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/e64670db-0179-44ac-9a75-4b097765342e', 'path': '/v2/testorg2/alpine/blobs/uploads/e64670db-0179-44ac-9a75-4b097765342e', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:33,510 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:33,510 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:33,510 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:33 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/e64670db-0179-44ac-9a75-4b097765342e HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:33 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/e64670db-0179-44ac-9a75-4b097765342e HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.203 80813 0.202) gunicorn-registry stdout | 2025-09-26 08:37:33,551 [258] [DEBUG] [app] Starting request: urn:request:818bf83e-eb3f-410e-af7f-f2d64aae9578 (/v2/testorg2/alpine/blobs/uploads/e64670db-0179-44ac-9a75-4b097765342e) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:33,551 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': 'e64670db-0179-44ac-9a75-4b097765342e', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:33,551 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:33,551 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:33,552 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:33,552 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:33,552 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:33,552 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:33,553 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:33,553 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,555 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,556 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,557 [258] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,558 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,560 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,561 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,562 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:33,563 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['e64670db-0179-44ac-9a75-4b097765342e', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,564 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:33,564 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:33,564 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:33,566 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:33,567 [258] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/8807058f-a8e7-4c04-9ce7-c1143c4e546e', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:33,567 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,567 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,567 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,567 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,567 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,567 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,567 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,567 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,567 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:33,567 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:33,567 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:33,567 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:33,567 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,567 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,567 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,567 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/8807058f-a8e7-4c04-9ce7-c1143c4e546e?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8807058f-a8e7-4c04-9ce7-c1143c4e546e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8807058f-a8e7-4c04-9ce7-c1143c4e546e?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/8807058f-a8e7-4c04-9ce7-c1143c4e546e', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:33,567 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,568 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,568 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,568 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,568 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:33,568 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8807058f-a8e7-4c04-9ce7-c1143c4e546e gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083733Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:33,568 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083733Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | c5e48be99f0b9b06316c0fe98149c30694e647cfde6ac357b125af7876c2fb6c gunicorn-registry stdout | 2025-09-26 08:37:33,568 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 7278dd9c8c264d14764d2353281c261767aebac01750358e2cc8e73ad68a2b91 gunicorn-registry stdout | 2025-09-26 08:37:33,568 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,568 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:33,568 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:33,575 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8807058f-a8e7-4c04-9ce7-c1143c4e546e?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:33,575 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9qf6-c7035p-13ei', 'x-amz-id-2': 'mg0l9qf6-c7035p-13ei', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:33 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:33,576 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/8807058f-a8e7-4c04-9ce7-c1143c4e546e68d650cdd73ec60008f935dc' gunicorn-registry stdout | 2025-09-26 08:37:33,576 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,576 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:33,576 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,576 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9qf6-c7035p-13ei', 'HostId': 'mg0l9qf6-c7035p-13ei', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9qf6-c7035p-13ei', 'x-amz-id-2': 'mg0l9qf6-c7035p-13ei', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:33 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/8807058f-a8e7-4c04-9ce7-c1143c4e546e', 'UploadId': '68d650cdd73ec60008f935dc'} gunicorn-registry stdout | 2025-09-26 08:37:33,576 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:33,577 [258] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/8807058f-a8e7-4c04-9ce7-c1143c4e546e', 'UploadId': '68d650cdd73ec60008f935dc'} gunicorn-registry stdout | 2025-09-26 08:37:33,577 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,577 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,577 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,577 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,577 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,578 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,578 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:33,578 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:33,578 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:33,578 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:33,578 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,579 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,579 [258] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,579 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/8807058f-a8e7-4c04-9ce7-c1143c4e546e', 'query_string': {'uploadId': '68d650cdd73ec60008f935dc'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8807058f-a8e7-4c04-9ce7-c1143c4e546e', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8807058f-a8e7-4c04-9ce7-c1143c4e546e?uploadId=68d650cdd73ec60008f935dc', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/8807058f-a8e7-4c04-9ce7-c1143c4e546e', 'UploadId': '68d650cdd73ec60008f935dc'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:33,579 [258] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,579 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,579 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,579 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,579 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:33,579 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8807058f-a8e7-4c04-9ce7-c1143c4e546e gunicorn-registry stdout | uploadId=68d650cdd73ec60008f935dc gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083733Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:33,579 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083733Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 3cd58f95ea3b2569db6f5c68629a2ed947f4363768bffbb894cae8ee1c3ca5e7 gunicorn-registry stdout | 2025-09-26 08:37:33,579 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | e538bb71a84c125df5f9048be25834178331ee8212a4c06f6ba93c41c69cfbeb gunicorn-registry stdout | 2025-09-26 08:37:33,579 [258] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,580 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:33,580 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:33,587 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/8807058f-a8e7-4c04-9ce7-c1143c4e546e?uploadId=68d650cdd73ec60008f935dc HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:37:33,587 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9qfh-cdmed3-tqq', 'x-amz-id-2': 'mg0l9qfh-cdmed3-tqq', 'Date': 'Fri, 26 Sep 2025 08:37:33 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:33,587 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:33,587 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,587 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:33,587 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,587 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9qfh-cdmed3-tqq', 'HostId': 'mg0l9qfh-cdmed3-tqq', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9qfh-cdmed3-tqq', 'x-amz-id-2': 'mg0l9qfh-cdmed3-tqq', 'date': 'Fri, 26 Sep 2025 08:37:33 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:37:33,588 [258] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob e64670db-0179-44ac-9a75-4b097765342e took 0.02315974235534668 seconds gunicorn-registry stdout | 2025-09-26 08:37:33,588 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['e64670db-0179-44ac-9a75-4b097765342e', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,589 [258] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, 'e64670db-0179-44ac-9a75-4b097765342e', 79035, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwM2ZjNmE0ZjhlYzk2ZGQxMzU4IiwicmVsYXRpb25zaGlwVHlwZSI6IkdFTkVSQVRFRF9GUk9NIn1dfX1iMjIxNTsAAAAAAAAAAKQJAAAAAACTW6xzQaiHV73Mwiw2H+6LCaWaaO9oqjK04waHtoFNIpRiLg==', 9, '{"chunks": [["uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6", 0, 79035]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 37, 33, 260293), None, None, 79]) gunicorn-registry stdout | 2025-09-26 08:37:33,591 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:33,591 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:33,591 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:33,591 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:33,591 [258] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/d1/d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021'} gunicorn-registry stdout | 2025-09-26 08:37:33,592 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,592 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,592 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,592 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,592 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,592 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,592 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,592 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:33,592 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:33,592 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:33,592 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:33,592 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,592 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,592 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,592 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/d1/d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d1/d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d1/d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/d1/d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:33,592 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,592 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,592 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,592 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,593 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:33,593 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d1/d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083733Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:33,593 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083733Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | c79680ea564e83b68a3a735b4c651d257d16b1a6672e29f4072b961841520708 gunicorn-registry stdout | 2025-09-26 08:37:33,593 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | df3a153feb430f06d808330181377fcb8437260be2b7e9741a8f37d9086867a0 gunicorn-registry stdout | 2025-09-26 08:37:33,593 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,593 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:33,593 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:33,598 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d1/d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:37:33,599 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9qfv-clvgt9-q1p', 'x-amz-id-2': 'mg0l9qfv-clvgt9-q1p', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:33 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:33,599 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:33,599 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,599 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:33,599 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,599 [258] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:37:33,599 [258] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:37:33,599 [258] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/d1/d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021 gunicorn-registry stdout | 2025-09-26 08:37:33,600 [258] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:33,600 [258] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:33,600 [258] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:33,600 [258] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:37:33,600 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,600 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,600 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,600 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,600 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,600 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,600 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,600 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:33,600 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:33,600 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:33,600 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:33,600 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,600 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,601 [258] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,601 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:33,601 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,601 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,601 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,601 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,601 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,601 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:33,601 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083733Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:33,601 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083733Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 9fda38a4694c39a2da1971ecd695b51f4ca683ddcc12295679d74ac44bc75946 gunicorn-registry stdout | 2025-09-26 08:37:33,601 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 0a5bf2eb706b1088162a8995d38c4373850ec8318b23a90dcf3c992c4fe74a14 gunicorn-registry stdout | 2025-09-26 08:37:33,601 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,601 [258] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,601 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:33,601 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:33,606 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:33,606 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9qg2-cqdyul-15f2', 'x-amz-id-2': 'mg0l9qg2-cqdyul-15f2', 'ETag': '"7b4e0b64949e58dfef3ca6165d2fc87e-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:33 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '79035', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:33 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:33,606 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:33,606 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/d1/d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/d1/d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/d1/d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/d1/d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/d1/d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021', 'extra_args': {}, 'callbacks': [], 'size': 79035} gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:33,607 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:33,608 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,608 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,608 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,608 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/d1/d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d1/d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d1/d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/d1/d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:33,608 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,608 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,608 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,608 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,608 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,608 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:33,608 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d1/d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/d7fa3457-5b7f-43b3-8b31-4bb1012adeb6 gunicorn-registry stdout | x-amz-date:20250926T083733Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:33,608 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083733Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 30e0a1cb32d188d710d29ff64638d18b48994d7ce57aabd880fec72483762882 gunicorn-registry stdout | 2025-09-26 08:37:33,608 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 87d646702996efac5c9496f51986c35b9e65f9d3c4db1ffcb8c6050ef4bbb1de gunicorn-registry stdout | 2025-09-26 08:37:33,609 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,609 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,609 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:33,609 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:33,609 [258] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:33,635 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/d1/d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:37:33,635 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9qga-cv6fhh-41x', 'x-amz-id-2': 'mg0l9qga-cv6fhh-41x', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:37:33 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:33,635 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:37:33.000Z"7b4e0b64949e58dfef3ca6165d2fc87e-1"' gunicorn-registry stdout | 2025-09-26 08:37:33,635 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,636 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:33,636 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:33,636 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:33,636 [258] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:33,636 [258] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob e64670db-0179-44ac-9a75-4b097765342e with digest sha256:d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021 took 0.03721475601196289 seconds gunicorn-registry stdout | 2025-09-26 08:37:33,637 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['e64670db-0179-44ac-9a75-4b097765342e', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,638 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,638 [258] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['3901dfa9-357a-4b30-a82e-30cd56776f5b', 79035, None, True, True, 'sha256:d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021']) gunicorn-registry stdout | 2025-09-26 08:37:33,639 [258] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [79, 9]) gunicorn-registry stdout | 2025-09-26 08:37:33,640 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:33,640 [258] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [3, 79, datetime.datetime(2025, 9, 26, 8, 37, 33, 640708), datetime.datetime(2025, 9, 26, 9, 37, 33, 640693)]) gunicorn-registry stdout | 2025-09-26 08:37:33,641 [258] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [79]) gunicorn-registry stdout | 2025-09-26 08:37:33,643 [258] [DEBUG] [app] Ending request: urn:request:818bf83e-eb3f-410e-af7f-f2d64aae9578 (/v2/testorg2/alpine/blobs/uploads/e64670db-0179-44ac-9a75-4b097765342e) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:818bf83e-eb3f-410e-af7f-f2d64aae9578', 'remote_addr': '10.129.4.11', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/e64670db-0179-44ac-9a75-4b097765342e?digest=sha256:d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021', 'path': '/v2/testorg2/alpine/blobs/uploads/e64670db-0179-44ac-9a75-4b097765342e', 'parameters': {'digest': 'sha256:d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:33,643 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:33,643 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:33,643 [258] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:33 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/e64670db-0179-44ac-9a75-4b097765342e?digest=sha256%3Ad1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:33 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/e64670db-0179-44ac-9a75-4b097765342e?digest=sha256%3Ad1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.093 1853 0.093) manifestsubjectbackfillworker stdout | 2025-09-26 08:37:33,984 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:37:33,984 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:17.985743+00:00 (in 44.000900 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:37:33,984 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:33 GMT)" (scheduled at 2025-09-26 08:37:33.984400+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:37:33,985 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."subject_backfilled" = %s) OR ("t1"."subject_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:37:33,990 [64] [DEBUG] [__main__] Manifest subject backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:37:33,990 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:37:33,991 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:33 GMT)" executed successfully autopruneworker stdout | 2025-09-26 08:37:34,346 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} expiredappspecifictokenworker stdout | 2025-09-26 08:37:34,425 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} manifestbackfillworker stdout | 2025-09-26 08:37:34,641 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} gunicorn-registry stdout | 2025-09-26 08:37:34,791 [251] [DEBUG] [app] Starting request: urn:request:d8c7d147-1e4a-4ba1-9676-eb7b6c9394ed (/v2/testorg2/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:34,791 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:34,791 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:34,791 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:34,792 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:34,792 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:34,792 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:34,792 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:34,792 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:34,793 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:34,795 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:34,796 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:34,797 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:34,798 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:34,799 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:34,799 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:34,801 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:34,802 [251] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [3, '0bcdefac-590e-430d-8dc0-6b7913dfa210', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 37, 34, 801793)]) gunicorn-registry stdout | 2025-09-26 08:37:34,804 [251] [DEBUG] [app] Ending request: urn:request:d8c7d147-1e4a-4ba1-9676-eb7b6c9394ed (/v2/testorg2/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:d8c7d147-1e4a-4ba1-9676-eb7b6c9394ed', 'remote_addr': '10.129.4.11', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/', 'path': '/v2/testorg2/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:34,804 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:34,804 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:34,804 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:34 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:34 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.014 1697 0.014) builder stdout | 2025-09-26 08:37:35,036 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} gunicorn-registry stdout | 2025-09-26 08:37:35,684 [258] [DEBUG] [app] Starting request: urn:request:49cd06e2-98db-4e60-8190-2ed5b64317db (/v2/testorg2/alpine/blobs/sha256:2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:35,685 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:35,685 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:35,685 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:35,686 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:35,686 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:35,686 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:35,686 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:35,686 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:35,687 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:35,688 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:35,689 [258] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:35,689 [258] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2_2 gunicorn-registry stdout | 2025-09-26 08:37:35,690 [258] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:35,691 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:35,692 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:35,693 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:35,694 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:35,696 [258] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:35,697 [258] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2_2: None gunicorn-registry stdout | 2025-09-26 08:37:35,697 [258] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2_2: None gunicorn-registry stdout | 2025-09-26 08:37:35,697 [258] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:35,697 [258] [DEBUG] [app] Ending request: urn:request:49cd06e2-98db-4e60-8190-2ed5b64317db (/v2/testorg2/alpine/blobs/sha256:2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:49cd06e2-98db-4e60-8190-2ed5b64317db', 'remote_addr': '10.129.4.11', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2', 'path': '/v2/testorg2/alpine/blobs/sha256:2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:35,697 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:35,697 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:35,697 [258] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:35 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:35 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2 HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.014 1718 0.014) logrotateworker stdout | 2025-09-26 08:37:36,350 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gunicorn-registry stdout | 2025-09-26 08:37:36,599 [255] [DEBUG] [app] Starting request: urn:request:9ed66348-d9e4-43dd-8c68-14f2be45e63e (/v2/testorg2/alpine/blobs/sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:36,599 [255] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:36,599 [255] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:36,599 [255] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:36,600 [255] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:36,601 [255] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:36,601 [255] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:36,601 [255] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:36,601 [255] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:36,601 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,603 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,604 [255] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:36,604 [255] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb_2 gunicorn-registry stdout | 2025-09-26 08:37:36,604 [255] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:36,605 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,606 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,607 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,608 [255] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,609 [255] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,610 [255] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb_2: None gunicorn-registry stdout | 2025-09-26 08:37:36,610 [255] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb_2: None gunicorn-registry stdout | 2025-09-26 08:37:36,611 [255] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:36,611 [255] [DEBUG] [app] Ending request: urn:request:9ed66348-d9e4-43dd-8c68-14f2be45e63e (/v2/testorg2/alpine/blobs/sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:9ed66348-d9e4-43dd-8c68-14f2be45e63e', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb', 'path': '/v2/testorg2/alpine/blobs/sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:36,611 [255] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:36,611 [255] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:36,612 [255] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:36 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:36 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.014 1718 0.013) gunicorn-registry stdout | 2025-09-26 08:37:36,730 [255] [DEBUG] [app] Starting request: urn:request:1ac74316-e963-4bf4-9f3b-193691aa60dd (/v2/testorg2/alpine/blobs/sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:36,730 [255] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'digest': 'sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:36,730 [255] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:36,730 [255] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:36,731 [255] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:36,731 [255] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:36,731 [255] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:36,731 [255] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:36,731 [255] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:36,732 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."uuid" = %s) AND ("t1"."organization" = %s)) LIMIT %s OFFSET %s', ['9f776dce-7347-4b69-8bd5-3621034db23c', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,733 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s', ['testorg2', True, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,734 [255] [DEBUG] [endpoints.decorators] Skipping pull through proxy cache: instance matching query does not exist: gunicorn-registry stdout | SQL: SELECT "t1"."id", "t1"."organization_id", "t1"."creation_date", "t1"."upstream_registry", "t1"."upstream_registry_username", "t1"."upstream_registry_password", "t1"."expiration_s", "t1"."insecure" FROM "proxycacheconfig" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."organization_id" = "t2"."id") WHERE (("t2"."username" = %s) AND ("t2"."organization" = %s)) LIMIT %s OFFSET %s gunicorn-registry stdout | Params: ['testorg2', True, 1, 0] gunicorn-registry stdout | 2025-09-26 08:37:36,734 [255] [DEBUG] [data.cache.impl] Checking cache for key repo_blob__testorg2_alpine_sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb_2 gunicorn-registry stdout | 2025-09-26 08:37:36,734 [255] [DEBUG] [data.cache.impl] Found no result in cache for key repo_blob__testorg2_alpine_sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb_2; calling loader gunicorn-registry stdout | 2025-09-26 08:37:36,736 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,737 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,737 [255] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,738 [255] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,739 [255] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,740 [255] [DEBUG] [data.cache.impl] Got loaded result for key repo_blob__testorg2_alpine_sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb_2: None gunicorn-registry stdout | 2025-09-26 08:37:36,740 [255] [DEBUG] [data.cache.impl] Not caching loaded result for key repo_blob__testorg2_alpine_sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb_2: None gunicorn-registry stdout | 2025-09-26 08:37:36,740 [255] [DEBUG] [endpoints.v2] sending response: b'{"errors":[{"code":"BLOB_UNKNOWN","detail":{},"message":"blob unknown to registry"}]}\n' gunicorn-registry stdout | 2025-09-26 08:37:36,740 [255] [DEBUG] [app] Ending request: urn:request:1ac74316-e963-4bf4-9f3b-193691aa60dd (/v2/testorg2/alpine/blobs/sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb) {'endpoint': 'v2.check_blob_exists', 'request_id': 'urn:request:1ac74316-e963-4bf4-9f3b-193691aa60dd', 'remote_addr': '10.131.2.20', 'http_method': 'HEAD', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb', 'path': '/v2/testorg2/alpine/blobs/sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:36,741 [255] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:36,741 [255] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:36,741 [255] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:36 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb HTTP/1.1" 404 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:36 +0000] "HEAD /v2/testorg2/alpine/blobs/sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb HTTP/1.1" 404 0 "-" "skopeo/1.14.5" (0.012 1718 0.012) gunicorn-registry stdout | 2025-09-26 08:37:36,781 [258] [DEBUG] [app] Starting request: urn:request:94324e35-ebad-4ccc-982b-c289d097c89c (/v2/testorg2/alpine/blobs/uploads/) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:36,781 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:36,781 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:36,781 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:36,782 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:36,782 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:36,782 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:36,782 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:36,783 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:36,784 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,785 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,786 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,787 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,788 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,789 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,790 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:36,791 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,792 [258] [DEBUG] [peewee] ('INSERT INTO "blobupload" ("repository_id", "uuid", "byte_count", "sha_state", "location_id", "storage_metadata", "chunk_count", "created") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "blobupload"."id"', [3, '8257342b-43f1-46a7-a268-f70d98b629c0', 0, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5RiLg==', 9, '{"chunks": []}', 0, datetime.datetime(2025, 9, 26, 8, 37, 36, 792151)]) gunicorn-registry stdout | 2025-09-26 08:37:36,794 [258] [DEBUG] [app] Ending request: urn:request:94324e35-ebad-4ccc-982b-c289d097c89c (/v2/testorg2/alpine/blobs/uploads/) {'endpoint': 'v2.start_blob_upload', 'request_id': 'urn:request:94324e35-ebad-4ccc-982b-c289d097c89c', 'remote_addr': '10.131.2.20', 'http_method': 'POST', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/', 'path': '/v2/testorg2/alpine/blobs/uploads/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:36,794 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:36,794 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:36,795 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:36 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:36 +0000] "POST /v2/testorg2/alpine/blobs/uploads/ HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.014 1697 0.014) gunicorn-registry stdout | 2025-09-26 08:37:36,836 [251] [DEBUG] [app] Starting request: urn:request:3d021772-0af6-4831-9b9f-3da8c3e533de (/v2/testorg2/alpine/blobs/uploads/8257342b-43f1-46a7-a268-f70d98b629c0) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:36,836 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '8257342b-43f1-46a7-a268-f70d98b629c0', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:36,836 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:36,836 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:36,837 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:36,837 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:36,837 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:36,837 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:36,837 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:36,838 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,840 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,840 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,842 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,843 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,843 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,845 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,845 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:36,846 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['8257342b-43f1-46a7-a268-f70d98b629c0', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:36,847 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:36,847 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:36,847 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:36,848 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:36,848 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:36,848 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,848 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,849 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,849 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,849 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:36,849 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,849 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,849 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:36,849 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:36,849 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:36,849 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:36,849 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:36,849 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,849 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,849 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,849 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:36,849 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:36,849 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:36,849 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,849 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,850 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:36,850 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083736Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:36,850 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083736Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | d832394490b9999178cdb2982f340b558299f43df1f91fae382e17ac499ee9c7 gunicorn-registry stdout | 2025-09-26 08:37:36,850 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 1e5b23f99194ac5ddb15e0aba10ffbd02e41ddcc069c83f0d21e1bf5d4a4ac9c gunicorn-registry stdout | 2025-09-26 08:37:36,850 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,850 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:36,850 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:36,857 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:36,858 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9syc-bvaau-9cf', 'x-amz-id-2': 'mg0l9syc-bvaau-9cf', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:36 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:36,858 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c1068d650d0d73ec60008f93602' gunicorn-registry stdout | 2025-09-26 08:37:36,858 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,858 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:36,858 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:36,858 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9syc-bvaau-9cf', 'HostId': 'mg0l9syc-bvaau-9cf', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9syc-bvaau-9cf', 'x-amz-id-2': 'mg0l9syc-bvaau-9cf', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:36 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10', 'UploadId': '68d650d0d73ec60008f93602'} gunicorn-registry stdout | 2025-09-26 08:37:36,858 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:36,908 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:36,908 [251] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:36,908 [251] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10', 'UploadId': '68d650d0d73ec60008f93602', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b8930b30>, 'ContentLength': 79005} gunicorn-registry stdout | 2025-09-26 08:37:36,909 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,909 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,909 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,909 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,909 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:36,909 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,909 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,909 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:36,909 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:36,909 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:36,909 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:36,909 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:36,909 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,909 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,909 [251] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:36,909 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,910 [251] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,910 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10', 'query_string': {'uploadId': '68d650d0d73ec60008f93602', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '79005', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'r6yDCEo/mYnVphjT717C5A==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b8930b30>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10?uploadId=68d650d0d73ec60008f93602&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10', 'UploadId': '68d650d0d73ec60008f93602', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b8930b30>, 'ContentLength': 79005}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:36,910 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:36,910 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:36,910 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,910 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,910 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:36,910 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10 gunicorn-registry stdout | partNumber=1&uploadId=68d650d0d73ec60008f93602 gunicorn-registry stdout | content-length:79005 gunicorn-registry stdout | content-md5:r6yDCEo/mYnVphjT717C5A== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083736Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:36,910 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083736Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 0a8a4abb6656c8588bb2c7460c0e258d730c9853eab06c1087e2112913cf48d2 gunicorn-registry stdout | 2025-09-26 08:37:36,910 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | ea6d6941f74a379336b18746881767d2b75ff9721dcdde7a55aaa4ac8673d1f6 gunicorn-registry stdout | 2025-09-26 08:37:36,910 [251] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,910 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:36,910 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:36,911 [251] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:37:36,912 [251] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:37:36,990 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10?uploadId=68d650d0d73ec60008f93602&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:36,990 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9t00-1b9r64-q8u', 'x-amz-id-2': 'mg0l9t00-1b9r64-q8u', 'ETag': '"afac83084a3f9989d5a618d3ef5ec2e4"', 'Date': 'Fri, 26 Sep 2025 08:37:36 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:36,990 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:36,990 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,991 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:36,991 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:36,991 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9t00-1b9r64-q8u', 'HostId': 'mg0l9t00-1b9r64-q8u', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9t00-1b9r64-q8u', 'x-amz-id-2': 'mg0l9t00-1b9r64-q8u', 'etag': '"afac83084a3f9989d5a618d3ef5ec2e4"', 'date': 'Fri, 26 Sep 2025 08:37:36 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"afac83084a3f9989d5a618d3ef5ec2e4"'} gunicorn-registry stdout | 2025-09-26 08:37:36,991 [251] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10', 'UploadId': '68d650d0d73ec60008f93602', 'MultipartUpload': {'Parts': [{'ETag': '"afac83084a3f9989d5a618d3ef5ec2e4"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:36,991 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,991 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,991 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,991 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:36,991 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,991 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,991 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:36,991 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:36,991 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:36,991 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:36,991 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:36,991 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,992 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,992 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,992 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10', 'query_string': {'uploadId': '68d650d0d73ec60008f93602'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"afac83084a3f9989d5a618d3ef5ec2e4"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10?uploadId=68d650d0d73ec60008f93602', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10', 'UploadId': '68d650d0d73ec60008f93602', 'MultipartUpload': {'Parts': [{'ETag': '"afac83084a3f9989d5a618d3ef5ec2e4"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:36,992 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:36,992 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:36,992 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,992 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,992 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:36,992 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10 gunicorn-registry stdout | uploadId=68d650d0d73ec60008f93602 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:7dc5670d4a027fef0c2375710b66870e414dfe1087823aff2507011c9575e85c gunicorn-registry stdout | x-amz-date:20250926T083736Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 7dc5670d4a027fef0c2375710b66870e414dfe1087823aff2507011c9575e85c gunicorn-registry stdout | 2025-09-26 08:37:36,992 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083736Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | a8bc2c170556080099af1b3a82d7f26aaa66c80d30b590599ce2c29b44e504ab gunicorn-registry stdout | 2025-09-26 08:37:36,992 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 5c89edef550eb8e766546c2d38800a036cd7eb9fe270cc9b2925b2d38edaa817 gunicorn-registry stdout | 2025-09-26 08:37:36,992 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:36,992 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:36,992 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:37,009 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10?uploadId=68d650d0d73ec60008f93602 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:37,009 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9t29-2ntlxx-11mx', 'x-amz-id-2': 'mg0l9t29-2ntlxx-11mx', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:37 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:37,009 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10"e6bbd52a3ee88fbce5a0b34db1b4c9c1-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10?uploadId=68d650d0d73ec60008f93602' gunicorn-registry stdout | 2025-09-26 08:37:37,009 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,010 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,010 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:37,010 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,010 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9t29-2ntlxx-11mx', 'HostId': 'mg0l9t29-2ntlxx-11mx', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9t29-2ntlxx-11mx', 'x-amz-id-2': 'mg0l9t29-2ntlxx-11mx', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:37 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10?uploadId=68d650d0d73ec60008f93602', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10', 'ETag': '"e6bbd52a3ee88fbce5a0b34db1b4c9c1-1"'} gunicorn-registry stdout | 2025-09-26 08:37:37,010 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:37,011 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:37,011 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 79005 bytes to blob 8257342b-43f1-46a7-a268-f70d98b629c0 took 0.16356635093688965 seconds gunicorn-registry stdout | 2025-09-26 08:37:37,011 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['8257342b-43f1-46a7-a268-f70d98b629c0', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,013 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '8257342b-43f1-46a7-a268-f70d98b629c0', 79005, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwaGlwVHlwZSI6IkdFTkVSQVRFRF9GUk9NIn1dfX1iMjIxNTNmYzZhNGY4ZWM5NmRkMTM1OCIsInJlbGF0aW9ucx0AAAAAAAAAAKQJAAAAAADsbNrTdoxwUmDNeWzir9Toh36mhrWYk7E7B4A8NMuuT5RiLg==', 9, '{"chunks": [["uploads/4ece9ebe-3ed5-44d8-ae9a-146ca9358c10", 0, 79005]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 37, 36, 792151), None, None, 83]) gunicorn-registry stdout | 2025-09-26 08:37:37,015 [251] [DEBUG] [app] Ending request: urn:request:3d021772-0af6-4831-9b9f-3da8c3e533de (/v2/testorg2/alpine/blobs/uploads/8257342b-43f1-46a7-a268-f70d98b629c0) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:3d021772-0af6-4831-9b9f-3da8c3e533de', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/8257342b-43f1-46a7-a268-f70d98b629c0', 'path': '/v2/testorg2/alpine/blobs/uploads/8257342b-43f1-46a7-a268-f70d98b629c0', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:37,016 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:37,016 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:37,016 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:37 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/8257342b-43f1-46a7-a268-f70d98b629c0 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:37 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/8257342b-43f1-46a7-a268-f70d98b629c0 HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.183 80783 0.182) gcworker stdout | 2025-09-26 08:37:37,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:37:37,085 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:57.083344+00:00 (in 19.997580 seconds) gcworker stdout | 2025-09-26 08:37:37,085 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:07 GMT)" (scheduled at 2025-09-26 08:37:37.085344+00:00) gcworker stdout | 2025-09-26 08:37:37,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,092 [251] [DEBUG] [app] Starting request: urn:request:fb27312d-8e03-4cb1-873e-fe5a81be0566 (/v2/testorg2/alpine/blobs/uploads/0e4807f3-a89f-40cd-9b83-38eb3b477b02) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gcworker stdout | 2025-09-26 08:37:37,092 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875557091, None, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,092 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '0e4807f3-a89f-40cd-9b83-38eb3b477b02', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:37,092 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:37,092 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:37,093 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:37,093 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:37,093 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:37,093 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:37,093 [251] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:37,094 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gcworker stdout | 2025-09-26 08:37:37,094 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:37:37,094 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:07 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:37:37,095 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,096 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,097 [251] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,098 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,099 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,100 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,101 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:37,102 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['0e4807f3-a89f-40cd-9b83-38eb3b477b02', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,102 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:37,103 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:37,103 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:37,103 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:37,104 [251] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/13f0e173-438e-47bb-b136-6d30c015e3bf', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:37,105 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,105 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,105 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,105 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,105 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,105 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,105 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,105 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,105 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:37,105 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:37,105 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:37,105 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:37,105 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,105 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,105 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,105 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/13f0e173-438e-47bb-b136-6d30c015e3bf?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/13f0e173-438e-47bb-b136-6d30c015e3bf', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/13f0e173-438e-47bb-b136-6d30c015e3bf?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/13f0e173-438e-47bb-b136-6d30c015e3bf', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:37,105 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,105 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,105 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,105 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,106 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:37,106 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/13f0e173-438e-47bb-b136-6d30c015e3bf gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083737Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:37,106 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083737Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 7d6c5c2b03ce5a39ca48c30dc66fa1fc2f47676ae5b0c53f8ba60c528e16529f gunicorn-registry stdout | 2025-09-26 08:37:37,106 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 2b75bcb6a7d758b2e16498bdf9fadfbb6807cd0a4b889ff1bae60a11919d21ee gunicorn-registry stdout | 2025-09-26 08:37:37,106 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,106 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:37,106 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:37,111 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/13f0e173-438e-47bb-b136-6d30c015e3bf?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:37,111 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9t5f-4jkhxq-12j', 'x-amz-id-2': 'mg0l9t5f-4jkhxq-12j', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:37 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:37,111 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/13f0e173-438e-47bb-b136-6d30c015e3bf68d650d1d73ec60008f9360f' gunicorn-registry stdout | 2025-09-26 08:37:37,112 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,112 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:37,112 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,112 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9t5f-4jkhxq-12j', 'HostId': 'mg0l9t5f-4jkhxq-12j', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9t5f-4jkhxq-12j', 'x-amz-id-2': 'mg0l9t5f-4jkhxq-12j', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:37 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/13f0e173-438e-47bb-b136-6d30c015e3bf', 'UploadId': '68d650d1d73ec60008f9360f'} gunicorn-registry stdout | 2025-09-26 08:37:37,112 [251] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:37,112 [251] [DEBUG] [boto3.resources.action] Calling s3:abort_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/13f0e173-438e-47bb-b136-6d30c015e3bf', 'UploadId': '68d650d1d73ec60008f9360f'} gunicorn-registry stdout | 2025-09-26 08:37:37,112 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,112 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,113 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,113 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,113 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,113 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,113 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:37,113 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:37,113 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:37,113 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:37,113 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,113 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,113 [251] [DEBUG] [botocore.hooks] Event before-call.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,114 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=AbortMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/13f0e173-438e-47bb-b136-6d30c015e3bf', 'query_string': {'uploadId': '68d650d1d73ec60008f9360f'}, 'method': 'DELETE', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/13f0e173-438e-47bb-b136-6d30c015e3bf', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/13f0e173-438e-47bb-b136-6d30c015e3bf?uploadId=68d650d1d73ec60008f9360f', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/13f0e173-438e-47bb-b136-6d30c015e3bf', 'UploadId': '68d650d1d73ec60008f9360f'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:37,114 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,114 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,114 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,114 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,114 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:37,114 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | DELETE gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/13f0e173-438e-47bb-b136-6d30c015e3bf gunicorn-registry stdout | uploadId=68d650d1d73ec60008f9360f gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083737Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:37,114 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083737Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 0cb2f062c2e2ae1fbdb65562a4deda953eabd9075f09852836561b7d6438674f gunicorn-registry stdout | 2025-09-26 08:37:37,114 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 9bcd3c2938445cb3d28765e16303a84081d443d9f20b6d9725e8ef100eb38480 gunicorn-registry stdout | 2025-09-26 08:37:37,114 [251] [DEBUG] [botocore.hooks] Event request-created.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,114 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:37,114 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:37,121 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "DELETE /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/13f0e173-438e-47bb-b136-6d30c015e3bf?uploadId=68d650d1d73ec60008f9360f HTTP/1.1" 204 0 gunicorn-registry stdout | 2025-09-26 08:37:37,121 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9t5n-4oelo9-199u', 'x-amz-id-2': 'mg0l9t5n-4oelo9-199u', 'Date': 'Fri, 26 Sep 2025 08:37:37 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:37,121 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:37,121 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,121 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:37,121 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.AbortMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,121 [251] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9t5n-4oelo9-199u', 'HostId': 'mg0l9t5n-4oelo9-199u', 'HTTPStatusCode': 204, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9t5n-4oelo9-199u', 'x-amz-id-2': 'mg0l9t5n-4oelo9-199u', 'date': 'Fri, 26 Sep 2025 08:37:37 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}} gunicorn-registry stdout | 2025-09-26 08:37:37,122 [251] [DEBUG] [data.registry_model.blobuploader] Uploaded 0 bytes to blob 0e4807f3-a89f-40cd-9b83-38eb3b477b02 took 0.018892526626586914 seconds gunicorn-registry stdout | 2025-09-26 08:37:37,122 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['0e4807f3-a89f-40cd-9b83-38eb3b477b02', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,123 [251] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '0e4807f3-a89f-40cd-9b83-38eb3b477b02', 5678, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwL21vYnlwcm9qZWN0Lm9yZy9idWlsZGtpdEB2MSNoZXJtZXRpYyI6dHJ1ZX19fTQ5NzF9XV19fSwiaHR0cHM6Ly4AAAAAAAAAALAAAAAAAAAl/YVwBbAe7wVbjnWjzFI98IsV64aBRVs3Q7X22uonuJRiLg==', 9, '{"chunks": [["uploads/4dd7d463-20ac-4af9-92d8-12f637bd25b8", 0, 5678]]}', 2, None, datetime.datetime(2025, 9, 26, 8, 37, 36, 842426), None, None, 84]) gunicorn-registry stdout | 2025-09-26 08:37:37,125 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:37,125 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:37,125 [251] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:37,126 [251] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:37,126 [251] [DEBUG] [boto3.resources.action] Calling s3:head_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/1b/1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8'} gunicorn-registry stdout | 2025-09-26 08:37:37,126 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,126 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,127 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,127 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,127 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,127 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,127 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,127 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:37,127 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:37,127 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:37,127 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:37,127 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,127 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,127 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,127 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/sha256/1b/1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/1b/1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/1b/1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/1b/1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:37,127 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,127 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,127 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,127 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,127 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:37,127 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/1b/1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083737Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:37,127 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083737Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | ed5190ac2db08f9b5b9343d532d4060b125ac9aa5458bbdfa996bee62acb3ee5 gunicorn-registry stdout | 2025-09-26 08:37:37,128 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | c9f90802627874d36435bf97f392f8b420caa915ea4629f1164d932db6ca2bf7 gunicorn-registry stdout | 2025-09-26 08:37:37,128 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,128 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:37,128 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:37,132 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/1b/1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8 HTTP/1.1" 404 0 gunicorn-registry stdout | 2025-09-26 08:37:37,132 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9t61-4wecvz-12ka', 'x-amz-id-2': 'mg0l9t61-4wecvz-12ka', 'Content-Type': 'application/xml', 'Content-Length': '339', 'Date': 'Fri, 26 Sep 2025 08:37:37 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:37,132 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:37,133 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,133 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:37,133 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,133 [251] [DEBUG] [storage.cloud] Server side assembly is set to True. gunicorn-registry stdout | 2025-09-26 08:37:37,133 [251] [DEBUG] [storage.cloud] Initiating multipart upload and server side assembly for final push. gunicorn-registry stdout | 2025-09-26 08:37:37,133 [251] [DEBUG] [storage.cloud] Performing server side assembly of multi-part upload for: sha256/1b/1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8 gunicorn-registry stdout | 2025-09-26 08:37:37,133 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:37,133 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:37,133 [251] [DEBUG] [s3transfer.tasks] CopySubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:37,133 [251] [DEBUG] [s3transfer.tasks] Executing task CopySubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } gunicorn-registry stdout | 2025-09-26 08:37:37,133 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,133 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,133 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,134 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,134 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,134 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,134 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,134 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:37,134 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:37,134 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:37,134 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:37,134 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,134 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,134 [251] [DEBUG] [botocore.hooks] Event before-call.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,134 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=HeadObject) with params: {'url_path': '/datastorage/registry/uploads/4dd7d463-20ac-4af9-92d8-12f637bd25b8', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4dd7d463-20ac-4af9-92d8-12f637bd25b8', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4dd7d463-20ac-4af9-92d8-12f637bd25b8', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4dd7d463-20ac-4af9-92d8-12f637bd25b8'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:37,134 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,134 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,134 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,134 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,134 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,134 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:37,134 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | HEAD gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4dd7d463-20ac-4af9-92d8-12f637bd25b8 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083737Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:37,134 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083737Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 0e7446c2f0245e53bd2bf20a578ff32a6029e8cfd2e3e96fb16f34e27c037741 gunicorn-registry stdout | 2025-09-26 08:37:37,135 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | ae6a3b88e84d235bfbec18e4918e2ddda17d1a5e33b99639484e946e6d079fde gunicorn-registry stdout | 2025-09-26 08:37:37,135 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,135 [251] [DEBUG] [botocore.hooks] Event request-created.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,135 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:37,135 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:37,136 [251] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | 2025-09-26 08:37:37,165 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "HEAD /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4dd7d463-20ac-4af9-92d8-12f637bd25b8 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:37,166 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9t6x-5forqo-gla', 'x-amz-id-2': 'mg0l9t6x-5forqo-gla', 'ETag': '"442d293bab46026a8aa6fa3e64f00064-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:37 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '5678', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:37 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:37,166 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:37,166 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,166 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:37,166 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.HeadObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,166 [251] [DEBUG] [s3transfer.futures] Submitting task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/1b/1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8', 'extra_args': {}}) to executor for transfer request: 0. gunicorn-registry stdout | 2025-09-26 08:37:37,166 [251] [DEBUG] [s3transfer.utils] Acquiring 0 gunicorn-registry stdout | 2025-09-26 08:37:37,167 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/1b/1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8', 'extra_args': {}}) about to wait for the following futures [] gunicorn-registry stdout | 2025-09-26 08:37:37,167 [251] [DEBUG] [s3transfer.tasks] CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/1b/1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8', 'extra_args': {}}) done waiting for dependent futures gunicorn-registry stdout | 2025-09-26 08:37:37,167 [251] [DEBUG] [s3transfer.tasks] Executing task CopyObjectTask(transfer_id=0, {'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/1b/1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8', 'extra_args': {}}) with kwargs {'client': , 'copy_source': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/4dd7d463-20ac-4af9-92d8-12f637bd25b8'}, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'key': 'datastorage/registry/sha256/1b/1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8', 'extra_args': {}, 'callbacks': [], 'size': 5678} gunicorn-registry stdout | 2025-09-26 08:37:37,167 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,167 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,167 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,167 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,167 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,167 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,167 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,167 [251] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,167 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,167 [251] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,167 [251] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:37,167 [251] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:37,168 [251] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:37,168 [251] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:37,168 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,168 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,168 [251] [DEBUG] [botocore.hooks] Event before-call.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,168 [251] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CopyObject) with params: {'url_path': '/datastorage/registry/sha256/1b/1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-copy-source': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4dd7d463-20ac-4af9-92d8-12f637bd25b8', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/1b/1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/1b/1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'CopySource': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4dd7d463-20ac-4af9-92d8-12f637bd25b8', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/1b/1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:37,168 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,168 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,168 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,168 [251] [DEBUG] [botocore.hooks] Event choose-signer.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,168 [251] [DEBUG] [botocore.hooks] Event before-sign.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,168 [251] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:37,168 [251] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/1b/1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-copy-source:quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/4dd7d463-20ac-4af9-92d8-12f637bd25b8 gunicorn-registry stdout | x-amz-date:20250926T083737Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-copy-source;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:37,168 [251] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083737Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 4260360f296f167d8cc7015221a826bb1192bb83ff63e752f58ae4d96301dab7 gunicorn-registry stdout | 2025-09-26 08:37:37,168 [251] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 9997f874e9e1777885089311e8978e619ae95b7aeba76ae3ac489ca22f1b74f8 gunicorn-registry stdout | 2025-09-26 08:37:37,168 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,168 [251] [DEBUG] [botocore.hooks] Event request-created.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,169 [251] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:37,169 [251] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:37,169 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:37,195 [251] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/1b/1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8 HTTP/1.1" 200 235 gunicorn-registry stdout | 2025-09-26 08:37:37,195 [251] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9t76-5kwq78-1adf', 'x-amz-id-2': 'mg0l9t76-5kwq78-1adf', 'Content-Type': 'application/xml', 'Content-Length': '235', 'Date': 'Fri, 26 Sep 2025 08:37:37 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:37,195 [251] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'2025-09-26T08:37:37.000Z"442d293bab46026a8aa6fa3e64f00064-1"' gunicorn-registry stdout | 2025-09-26 08:37:37,195 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,195 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,195 [251] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:37,195 [251] [DEBUG] [botocore.hooks] Event needs-retry.s3.CopyObject: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,196 [251] [DEBUG] [s3transfer.utils] Releasing acquire 0/None gunicorn-registry stdout | 2025-09-26 08:37:37,196 [251] [DEBUG] [data.registry_model.blobuploader] Completed chunked upload for blob 0e4807f3-a89f-40cd-9b83-38eb3b477b02 with digest sha256:1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8 took 0.06317830085754395 seconds gunicorn-registry stdout | 2025-09-26 08:37:37,196 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['0e4807f3-a89f-40cd-9b83-38eb3b477b02', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,198 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,199 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorage" ("uuid", "image_size", "uncompressed_size", "uploading", "cas_path", "content_checksum") VALUES (%s, %s, %s, %s, %s, %s) RETURNING "imagestorage"."id"', ['6942381c-5633-42fd-ad2d-9e24226edf15', 5678, None, True, True, 'sha256:1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8']) gunicorn-registry stdout | 2025-09-26 08:37:37,199 [251] [DEBUG] [peewee] ('INSERT INTO "imagestorageplacement" ("storage_id", "location_id") VALUES (%s, %s) RETURNING "imagestorageplacement"."id"', [85, 9]) gunicorn-registry stdout | 2025-09-26 08:37:37,200 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,201 [251] [DEBUG] [peewee] ('INSERT INTO "uploadedblob" ("repository_id", "blob_id", "uploaded_at", "expires_at") VALUES (%s, %s, %s, %s) RETURNING "uploadedblob"."id"', [3, 85, datetime.datetime(2025, 9, 26, 8, 37, 37, 201153), datetime.datetime(2025, 9, 26, 9, 37, 37, 201139)]) gunicorn-registry stdout | 2025-09-26 08:37:37,202 [251] [DEBUG] [peewee] ('DELETE FROM "blobupload" WHERE ("blobupload"."id" = %s)', [84]) gunicorn-registry stdout | 2025-09-26 08:37:37,204 [251] [DEBUG] [app] Ending request: urn:request:fb27312d-8e03-4cb1-873e-fe5a81be0566 (/v2/testorg2/alpine/blobs/uploads/0e4807f3-a89f-40cd-9b83-38eb3b477b02) {'endpoint': 'v2.monolithic_upload_or_last_chunk', 'request_id': 'urn:request:fb27312d-8e03-4cb1-873e-fe5a81be0566', 'remote_addr': '10.131.2.20', 'http_method': 'PUT', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/0e4807f3-a89f-40cd-9b83-38eb3b477b02?digest=sha256:1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8', 'path': '/v2/testorg2/alpine/blobs/uploads/0e4807f3-a89f-40cd-9b83-38eb3b477b02', 'parameters': {'digest': 'sha256:1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:37,204 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:37,204 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:37,204 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:37 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/0e4807f3-a89f-40cd-9b83-38eb3b477b02?digest=sha256%3A1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:37 +0000] "PUT /v2/testorg2/alpine/blobs/uploads/0e4807f3-a89f-40cd-9b83-38eb3b477b02?digest=sha256%3A1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8 HTTP/1.1" 201 0 "-" "skopeo/1.14.5" (0.113 1853 0.113) gunicorn-registry stdout | 2025-09-26 08:37:37,488 [258] [DEBUG] [app] Starting request: urn:request:5e9092bd-989e-4e3f-a7e9-4ed454197045 (/v2/testorg2/alpine/blobs/uploads/83d1408a-de76-4294-a7d3-2ad5d1dad7ca) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:37,489 [258] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {'upload_uuid': '83d1408a-de76-4294-a7d3-2ad5d1dad7ca', 'namespace_name': 'testorg2', 'repo_name': 'alpine'} gunicorn-registry stdout | 2025-09-26 08:37:37,489 [258] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:37,489 [258] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODI4LCJpYXQiOjE3NTg4NzU4MjgsImV4cCI6MTc1ODg3OTQyOCwic3ViIjoicXVheSIsImFjY2VzcyI6W3sidHlwZSI6InJlcG9zaXRvcnkiLCJuYW1lIjoidGVzdG9yZzIvYWxwaW5lIiwiYWN0aW9ucyI6WyJwdXNoIiwicHVsbCJdfV0sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7InRlc3RvcmcyL2FscGluZSI6IiRkaXNhYmxlZCJ9LCJjb20uYXBvc3RpbGxlLnJvb3QiOiIkZGlzYWJsZWQifX0.B98r_yzSyE6Jy2ngYuuQLC6dMI4mW5G1dbuni33oRjdT1su4jTyYRsSudGNiMg8165peo8ceXvj41x_SN3KMw9lSRQERV2UbNsMBXMdvxFygI3tZ-wbzhoVKXkviEG3CMXPc_to_Ze3Em3Wx8kxF7zUg5OCWAtBn7XLPZGvBCbDw0xWyk7RFZHwBMvq3utiCexH5CMpQLGFAlBnvR3X7Iy_FkmZBDvMY5P7LKsr5SlTiutetOwmjPSM0iVy4NtDvrBmgzFxd2bZ3i5ZR2u9nkwekFPdZoGGekUM7jb4pSg3ZX4LZL4iV8n89WyPFzXdKE1o5bWCz7npHjzeRIXkAjg gunicorn-registry stdout | 2025-09-26 08:37:37,490 [258] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:37,490 [258] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:37,490 [258] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:37,490 [258] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {'testorg2/alpine': '$disabled'}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:37,490 [258] [DEBUG] [endpoints.v2] Checking permission for repo: testorg2/alpine gunicorn-registry stdout | 2025-09-26 08:37:37,491 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state", "t2"."id", "t2"."uuid", "t2"."username", "t2"."password_hash", "t2"."email", "t2"."verified", "t2"."stripe_id", "t2"."organization", "t2"."robot", "t2"."invoice_email", "t2"."invalid_login_attempts", "t2"."last_invalid_login", "t2"."removed_tag_expiration_s", "t2"."enabled", "t2"."invoice_email_address", "t2"."given_name", "t2"."family_name", "t2"."company", "t2"."location", "t2"."maximum_queued_builds_count", "t2"."creation_date", "t2"."last_accessed" FROM "repository" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_user_id" = "t2"."id") WHERE ((("t2"."username" = %s) AND ("t1"."name" = %s)) AND ("t1"."state" != %s)) LIMIT %s OFFSET %s', ['testorg2', 'alpine', 3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,492 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "visibility" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [2, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,493 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "repositorykind" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [1, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,494 [258] [DEBUG] [peewee] ('SELECT Sum("t1"."byte_count") AS "size_bytes" FROM "blobupload" AS "t1" WHERE ("t1"."repository_id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,494 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,495 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."size_bytes", "t1"."backfill_start_ms", "t1"."backfill_complete" FROM "quotanamespacesize" AS "t1" WHERE ("t1"."namespace_user_id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,496 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) AND ("t1"."robot" = %s)) LIMIT %s OFFSET %s', ['testorg2', False, 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,498 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."limit_bytes" FROM "userorganizationquota" AS "t1" INNER JOIN "user" AS "t2" ON ("t1"."namespace_id" = "t2"."id") WHERE ("t2"."username" = %s)', ['testorg2']) gunicorn-registry stdout | 2025-09-26 08:37:37,498 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['83d1408a-de76-4294-a7d3-2ad5d1dad7ca', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,499 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:37,499 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:37,499 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:37,500 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:37,500 [258] [DEBUG] [boto3.resources.action] Calling s3:create_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2', 'ContentType': 'application/octet-stream'} gunicorn-registry stdout | 2025-09-26 08:37:37,501 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,501 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,501 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,501 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,501 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,501 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,501 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,501 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,501 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:37,501 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:37,501 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:37,501 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:37,501 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,501 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,501 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,501 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CreateMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2?uploads', 'query_string': {}, 'method': 'POST', 'headers': {'Content-Type': 'application/octet-stream', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2?uploads', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2', 'ContentType': 'application/octet-stream'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:37,501 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,502 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,502 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,502 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,502 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:37,502 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2 gunicorn-registry stdout | uploads= gunicorn-registry stdout | content-type:application/octet-stream gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | x-amz-date:20250926T083737Z gunicorn-registry stdout | content-type;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 gunicorn-registry stdout | 2025-09-26 08:37:37,502 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083737Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 74716dff60a3eee849e26c9b379b61203960e3a092f7fa121b42b3075f1a5cd1 gunicorn-registry stdout | 2025-09-26 08:37:37,502 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 798d112d6f0467923712ec313d8fbc752a04a772281151a94ae7b54f64b99431 gunicorn-registry stdout | 2025-09-26 08:37:37,502 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,502 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:37,502 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:37,510 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2?uploads HTTP/1.1" 200 338 gunicorn-registry stdout | 2025-09-26 08:37:37,510 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9tgg-b3ze0j-uvt', 'x-amz-id-2': 'mg0l9tgg-b3ze0j-uvt', 'Content-Type': 'application/xml', 'Content-Length': '338', 'Date': 'Fri, 26 Sep 2025 08:37:37 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:37,510 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc268d650d1d73ec60008f93614' gunicorn-registry stdout | 2025-09-26 08:37:37,510 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,510 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:37,510 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CreateMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,510 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9tgg-b3ze0j-uvt', 'HostId': 'mg0l9tgg-b3ze0j-uvt', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9tgg-b3ze0j-uvt', 'x-amz-id-2': 'mg0l9tgg-b3ze0j-uvt', 'content-type': 'application/xml', 'content-length': '338', 'date': 'Fri, 26 Sep 2025 08:37:37 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2', 'UploadId': '68d650d1d73ec60008f93614'} gunicorn-registry stdout | 2025-09-26 08:37:37,510 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUpload gunicorn-registry stdout | 2025-09-26 08:37:37,511 [258] [DEBUG] [boto3.resources.factory] Loading s3:MultipartUploadPart gunicorn-registry stdout | 2025-09-26 08:37:37,511 [258] [DEBUG] [boto3.resources.model] Renaming MultipartUploadPart attribute part_number gunicorn-registry stdout | 2025-09-26 08:37:37,511 [258] [DEBUG] [boto3.resources.action] Calling s3:upload_part with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2', 'UploadId': '68d650d1d73ec60008f93614', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89ae430>, 'ContentLength': 241} gunicorn-registry stdout | 2025-09-26 08:37:37,511 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,511 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,511 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,511 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,511 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,511 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,511 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,511 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,511 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:37,512 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:37,512 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:37,512 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:37,512 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,512 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,512 [258] [DEBUG] [botocore.handlers] Adding expect 100 continue header to request. gunicorn-registry stdout | 2025-09-26 08:37:37,512 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,512 [258] [DEBUG] [botocore.hooks] Event before-call.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,512 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=UploadPart) with params: {'url_path': '/datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2', 'query_string': {'uploadId': '68d650d1d73ec60008f93614', 'partNumber': 1}, 'method': 'PUT', 'headers': {'Content-Length': '241', 'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource', 'Content-MD5': 'zxju0l2+bxbH2JFtmITTgA==', 'Expect': '100-continue'}, 'body': <_io.BytesIO object at 0x7fe1b89ae430>, 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2?uploadId=68d650d1d73ec60008f93614&partNumber=1', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2', 'UploadId': '68d650d1d73ec60008f93614', 'PartNumber': 1, 'Body': <_io.BytesIO object at 0x7fe1b89ae430>, 'ContentLength': 241}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:37,512 [258] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,513 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,513 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,513 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,513 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:37,513 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | PUT gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2 gunicorn-registry stdout | partNumber=1&uploadId=68d650d1d73ec60008f93614 gunicorn-registry stdout | content-length:241 gunicorn-registry stdout | content-md5:zxju0l2+bxbH2JFtmITTgA== gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:UNSIGNED-PAYLOAD gunicorn-registry stdout | x-amz-date:20250926T083737Z gunicorn-registry stdout | content-length;content-md5;host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | UNSIGNED-PAYLOAD gunicorn-registry stdout | 2025-09-26 08:37:37,513 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083737Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | ae632f8254989b3974475d94752779fe39cd2f6e53e1b8d7d30fc627733d6aa8 gunicorn-registry stdout | 2025-09-26 08:37:37,513 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 7f32141a9dc6fb5bdbe35fb45df7a342aa7e3879ccdb8fe0fd7d6a1a4376a4b2 gunicorn-registry stdout | 2025-09-26 08:37:37,513 [258] [DEBUG] [botocore.hooks] Event request-created.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,513 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:37,513 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:37,514 [258] [DEBUG] [botocore.awsrequest] Waiting for 100 Continue response. gunicorn-registry stdout | 2025-09-26 08:37:37,515 [258] [DEBUG] [botocore.awsrequest] 100 Continue response seen, now sending request body. gunicorn-registry stdout | 2025-09-26 08:37:37,595 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "PUT /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2?uploadId=68d650d1d73ec60008f93614&partNumber=1 HTTP/1.1" 200 0 gunicorn-registry stdout | 2025-09-26 08:37:37,595 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9tgq-ba2pl2-tt6', 'x-amz-id-2': 'mg0l9tgq-ba2pl2-tt6', 'ETag': '"cf18eed25dbe6f16c7d8916d9884d380"', 'Date': 'Fri, 26 Sep 2025 08:37:37 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5', 'Content-Length': '0'} gunicorn-registry stdout | 2025-09-26 08:37:37,595 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'' gunicorn-registry stdout | 2025-09-26 08:37:37,595 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,595 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:37,595 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.UploadPart: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,595 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9tgq-ba2pl2-tt6', 'HostId': 'mg0l9tgq-ba2pl2-tt6', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9tgq-ba2pl2-tt6', 'x-amz-id-2': 'mg0l9tgq-ba2pl2-tt6', 'etag': '"cf18eed25dbe6f16c7d8916d9884d380"', 'date': 'Fri, 26 Sep 2025 08:37:37 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5', 'content-length': '0'}, 'RetryAttempts': 0}, 'ETag': '"cf18eed25dbe6f16c7d8916d9884d380"'} gunicorn-registry stdout | 2025-09-26 08:37:37,595 [258] [DEBUG] [boto3.resources.action] Calling s3:complete_multipart_upload with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2', 'UploadId': '68d650d1d73ec60008f93614', 'MultipartUpload': {'Parts': [{'ETag': '"cf18eed25dbe6f16c7d8916d9884d380"', 'PartNumber': 1}]}} gunicorn-registry stdout | 2025-09-26 08:37:37,595 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,595 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,595 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,595 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,595 [258] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,596 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,596 [258] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,596 [258] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} gunicorn-registry stdout | 2025-09-26 08:37:37,596 [258] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 gunicorn-registry stdout | 2025-09-26 08:37:37,596 [258] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" gunicorn-registry stdout | 2025-09-26 08:37:37,596 [258] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} gunicorn-registry stdout | 2025-09-26 08:37:37,596 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,596 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,596 [258] [DEBUG] [botocore.hooks] Event before-call.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,596 [258] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=CompleteMultipartUpload) with params: {'url_path': '/datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2', 'query_string': {'uploadId': '68d650d1d73ec60008f93614'}, 'method': 'POST', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'"cf18eed25dbe6f16c7d8916d9884d380"1', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2?uploadId=68d650d1d73ec60008f93614', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2', 'UploadId': '68d650d1d73ec60008f93614', 'MultipartUpload': {'Parts': [{'ETag': '"cf18eed25dbe6f16c7d8916d9884d380"', 'PartNumber': 1}]}}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} gunicorn-registry stdout | 2025-09-26 08:37:37,596 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,596 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,596 [258] [DEBUG] [botocore.hooks] Event choose-signer.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,596 [258] [DEBUG] [botocore.hooks] Event before-sign.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,597 [258] [DEBUG] [botocore.auth] Calculating signature using v4 auth. gunicorn-registry stdout | 2025-09-26 08:37:37,597 [258] [DEBUG] [botocore.auth] CanonicalRequest: gunicorn-registry stdout | POST gunicorn-registry stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2 gunicorn-registry stdout | uploadId=68d650d1d73ec60008f93614 gunicorn-registry stdout | host:s3.openshift-storage.svc.cluster.local gunicorn-registry stdout | x-amz-content-sha256:887c112db7e58fbcb82e04f1a78fefa5a55dc9ec5190ad1f646a4c128cc08935 gunicorn-registry stdout | x-amz-date:20250926T083737Z gunicorn-registry stdout | host;x-amz-content-sha256;x-amz-date gunicorn-registry stdout | 887c112db7e58fbcb82e04f1a78fefa5a55dc9ec5190ad1f646a4c128cc08935 gunicorn-registry stdout | 2025-09-26 08:37:37,597 [258] [DEBUG] [botocore.auth] StringToSign: gunicorn-registry stdout | AWS4-HMAC-SHA256 gunicorn-registry stdout | 20250926T083737Z gunicorn-registry stdout | 20250926/us-east-1/s3/aws4_request gunicorn-registry stdout | 6da9fefcdc39e26070298e984aa2670387becf1a9655ea5f29bc8250bb07ade3 gunicorn-registry stdout | 2025-09-26 08:37:37,597 [258] [DEBUG] [botocore.auth] Signature: gunicorn-registry stdout | 4f075e8ad0eea4c4007220ac9001c11c5f974bc80b3823b35792496e87cbc87e gunicorn-registry stdout | 2025-09-26 08:37:37,597 [258] [DEBUG] [botocore.hooks] Event request-created.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,597 [258] [DEBUG] [botocore.endpoint] Sending http request: gunicorn-registry stdout | 2025-09-26 08:37:37,597 [258] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem gunicorn-registry stdout | 2025-09-26 08:37:37,613 [258] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "POST /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2?uploadId=68d650d1d73ec60008f93614 HTTP/1.1" 200 525 gunicorn-registry stdout | 2025-09-26 08:37:37,613 [258] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9tj2-cnyc4o-1dew', 'x-amz-id-2': 'mg0l9tj2-cnyc4o-1dew', 'Content-Type': 'application/xml', 'Content-Length': '525', 'Date': 'Fri, 26 Sep 2025 08:37:37 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} gunicorn-registry stdout | 2025-09-26 08:37:37,613 [258] [DEBUG] [botocore.parsers] Response body: gunicorn-registry stdout | b'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2"63472c4a7b658d4fbe924d527c3ee8f8-1"/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2?uploadId=68d650d1d73ec60008f93614' gunicorn-registry stdout | 2025-09-26 08:37:37,614 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,614 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler gunicorn-registry stdout | 2025-09-26 08:37:37,614 [258] [DEBUG] [botocore.retryhandler] No retry needed. gunicorn-registry stdout | 2025-09-26 08:37:37,614 [258] [DEBUG] [botocore.hooks] Event needs-retry.s3.CompleteMultipartUpload: calling handler > gunicorn-registry stdout | 2025-09-26 08:37:37,614 [258] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9tj2-cnyc4o-1dew', 'HostId': 'mg0l9tj2-cnyc4o-1dew', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9tj2-cnyc4o-1dew', 'x-amz-id-2': 'mg0l9tj2-cnyc4o-1dew', 'content-type': 'application/xml', 'content-length': '525', 'date': 'Fri, 26 Sep 2025 08:37:37 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'Location': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2?uploadId=68d650d1d73ec60008f93614', 'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2', 'ETag': '"63472c4a7b658d4fbe924d527c3ee8f8-1"'} gunicorn-registry stdout | 2025-09-26 08:37:37,614 [258] [DEBUG] [boto3.resources.factory] Loading s3:Object gunicorn-registry stdout | 2025-09-26 08:37:37,615 [258] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7fe1bb6fade0> gunicorn-registry stdout | 2025-09-26 08:37:37,615 [258] [DEBUG] [data.registry_model.blobuploader] Uploaded 241 bytes to blob 83d1408a-de76-4294-a7d3-2ad5d1dad7ca took 0.11556649208068848 seconds gunicorn-registry stdout | 2025-09-26 08:37:37,615 [258] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."uuid", "t1"."byte_count", "t1"."sha_state", "t1"."location_id", "t1"."storage_metadata", "t1"."chunk_count", "t1"."uncompressed_byte_count", "t1"."created", "t1"."piece_sha_state", "t1"."piece_hashes", "t2"."id", "t2"."name" FROM "blobupload" AS "t1" INNER JOIN "imagestoragelocation" AS "t2" ON ("t1"."location_id" = "t2"."id") WHERE ("t1"."uuid" = %s) LIMIT %s OFFSET %s', ['83d1408a-de76-4294-a7d3-2ad5d1dad7ca', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:37,617 [258] [DEBUG] [peewee] ('UPDATE "blobupload" SET "repository_id" = %s, "uuid" = %s, "byte_count" = %s, "sha_state" = %s, "location_id" = %s, "storage_metadata" = %s, "chunk_count" = %s, "uncompressed_byte_count" = %s, "created" = %s, "piece_sha_state" = %s, "piece_hashes" = %s WHERE ("blobupload"."id" = %s)', [3, '83d1408a-de76-4294-a7d3-2ad5d1dad7ca', 241, 'gASVlQAAAAAAAACMD3Jlc3VtYWJsZXNoYTI1NpSMBnNoYTI1NpSTlCmBlENwYTA1ZjViNDE0ZWFhMjg3MDNhZWI2MjZkYTA2NzJlODU4ZTIxMDgzZjdlMmQ4Il19fTNlMTM3ZjVkOWFmYTU2NDEAAAAAAAAAAAYAAAAAAAD/YoPo0cD4GOWnGq2MNDAb8MiuOLaTiWkbtPaZyRv03pRiLg==', 9, '{"chunks": [["uploads/e28b84e6-4ebf-4a72-8c6d-84b07e46ddc2", 0, 241]]}', 1, None, datetime.datetime(2025, 9, 26, 8, 37, 37, 441687), None, None, 85]) gunicorn-registry stdout | 2025-09-26 08:37:37,619 [258] [DEBUG] [app] Ending request: urn:request:5e9092bd-989e-4e3f-a7e9-4ed454197045 (/v2/testorg2/alpine/blobs/uploads/83d1408a-de76-4294-a7d3-2ad5d1dad7ca) {'endpoint': 'v2.upload_chunk', 'request_id': 'urn:request:5e9092bd-989e-4e3f-a7e9-4ed454197045', 'remote_addr': '10.131.2.20', 'http_method': 'PATCH', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/testorg2/alpine/blobs/uploads/83d1408a-de76-4294-a7d3-2ad5d1dad7ca', 'path': '/v2/testorg2/alpine/blobs/uploads/83d1408a-de76-4294-a7d3-2ad5d1dad7ca', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:37,620 [258] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:37,620 [258] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. gunicorn-registry stdout | 2025-09-26 08:37:37,620 [258] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:37 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/83d1408a-de76-4294-a7d3-2ad5d1dad7ca HTTP/1.1" 202 0 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:37 +0000] "PATCH /v2/testorg2/alpine/blobs/uploads/83d1408a-de76-4294-a7d3-2ad5d1dad7ca HTTP/1.1" 202 0 "-" "skopeo/1.14.5" (0.133 2017 0.133) securityworker stdout | 2025-09-26 08:37:37,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:37:37,683 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:41.684816+00:00 (in 4.000895 seconds) securityworker stdout | 2025-09-26 08:37:37,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:07 GMT)" (scheduled at 2025-09-26 08:37:37.683505+00:00) securityworker stdout | 2025-09-26 08:37:37,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:37:37,684 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:37:37,686 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:37:37,688 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:37:37,693 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:37,693 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:37,693 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-34 securityworker stdout | 2025-09-26 08:37:37,693 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 30 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-34 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 30 securityworker stdout | 2025-09-26 08:37:37,694 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 20, 24]) securityworker stdout | 2025-09-26 08:37:37,696 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 20-24 by worker securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 20-24 by worker securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 20-24 securityworker stdout | 2025-09-26 08:37:37,696 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 20-24 securityworker stdout | 2025-09-26 08:37:37,696 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 20-24 securityworker stdout | 2025-09-26 08:37:37,696 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:37:37,696 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 20-24 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stdout | 2025-09-26 08:37:37,696 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:37:37,696 [86] [DEBUG] [util.migrate.allocator] Right range 20-24 securityworker stdout | 2025-09-26 08:37:37,696 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-20 securityworker stdout | 2025-09-26 08:37:37,696 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 19 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Right range 20-24 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-20 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 19 securityworker stdout | 2025-09-26 08:37:37,697 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 19, 23]) securityworker stdout | 2025-09-26 08:37:37,698 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 19-23 by worker securityworker stdout | 2025-09-26 08:37:37,698 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 19-23 securityworker stdout | 2025-09-26 08:37:37,698 [86] [DEBUG] [util.migrate.allocator] Merging with block 20-24 securityworker stdout | 2025-09-26 08:37:37,698 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 24 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 19-23 by worker securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 19-23 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Merging with block 20-24 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 24 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:37:37,698 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:37:37,698 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:37,698 [86] [DEBUG] [util.migrate.allocator] Total range: 24-34 securityworker stdout | 2025-09-26 08:37:37,698 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:37,698 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 24-34 securityworker stdout | 2025-09-26 08:37:37,698 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 30 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Total range: 24-34 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 24-34 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 30 securityworker stdout | 2025-09-26 08:37:37,698 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 24, 28]) securityworker stdout | 2025-09-26 08:37:37,699 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 24-28 by worker securityworker stdout | 2025-09-26 08:37:37,699 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 24-28 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 24-28 by worker securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 24-28 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 28 securityworker stdout | 2025-09-26 08:37:37,699 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 28 securityworker stdout | 2025-09-26 08:37:37,699 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:37,699 [86] [DEBUG] [util.migrate.allocator] Total range: 28-34 securityworker stdout | 2025-09-26 08:37:37,699 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:37,699 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 28-34 securityworker stdout | 2025-09-26 08:37:37,699 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 30 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Total range: 28-34 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 28-34 securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 30 securityworker stdout | 2025-09-26 08:37:37,700 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 29, 33]) securityworker stderr | 2025-09-26 08:37:37 [86] [DEBUG] [util.migrate.allocator] Found 4 candidates, processing block start: 29 end: 33 by worker securityworker stdout | 2025-09-26 08:37:37,701 [86] [DEBUG] [util.migrate.allocator] Found 4 candidates, processing block start: 29 end: 33 by worker securityworker stdout | 2025-09-26 08:37:37,701 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [29, 1, 0]) securityworker stdout | 2025-09-26 08:37:37,703 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:85014141f8b45859108c04c9cef9d6fdac78bc56732245f93b7cc03ed39ab377', 1, 0]) securityworker stdout | 2025-09-26 08:37:37,705 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['81ec74c5-ebe4-4e1b-9554-d26a630f31ff']) securityworker stdout | 2025-09-26 08:37:37,706 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:37:37,708 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:37:37,708 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/85/85014141f8b45859108c04c9cef9d6fdac78bc56732245f93b7cc03ed39ab377'} securityworker stdout | 2025-09-26 08:37:37,709 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,709 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,709 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,709 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:37,709 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,709 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:37,709 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:37,709 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:37,709 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:37,709 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:37,710 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:37,710 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,710 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,710 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,710 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/85/85014141f8b45859108c04c9cef9d6fdac78bc56732245f93b7cc03ed39ab377', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/85/85014141f8b45859108c04c9cef9d6fdac78bc56732245f93b7cc03ed39ab377', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/85/85014141f8b45859108c04c9cef9d6fdac78bc56732245f93b7cc03ed39ab377', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/85/85014141f8b45859108c04c9cef9d6fdac78bc56732245f93b7cc03ed39ab377'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:37:37,710 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:37,710 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:37,710 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,710 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,710 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:37:37,710 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/85/85014141f8b45859108c04c9cef9d6fdac78bc56732245f93b7cc03ed39ab377 securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083737Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:37:37,710 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083737Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | 6d2aa6f69226964f4f0e9241166ba0d019d89a53d40f848a462af6bef994afcb securityworker stdout | 2025-09-26 08:37:37,710 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | e84dd426960445e0bb16ca745454962d66427f57789f57715da7cb81f463c045 securityworker stdout | 2025-09-26 08:37:37,710 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,710 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:37:37,711 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:37:37,711 [86] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: s3.openshift-storage.svc.cluster.local securityworker stdout | 2025-09-26 08:37:37,751 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/85/85014141f8b45859108c04c9cef9d6fdac78bc56732245f93b7cc03ed39ab377 HTTP/1.1" 200 584 securityworker stdout | 2025-09-26 08:37:37,751 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9tmv-exj7ac-5nb', 'x-amz-id-2': 'mg0l9tmv-exj7ac-5nb', 'ETag': '"6f74568df3b1ff1f878b28ec4aa6eb86-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:28 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '584', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:37 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:37:37,751 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:37:37,752 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,752 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:37:37,752 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:37,752 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9tmv-exj7ac-5nb', 'HostId': 'mg0l9tmv-exj7ac-5nb', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9tmv-exj7ac-5nb', 'x-amz-id-2': 'mg0l9tmv-exj7ac-5nb', 'etag': '"6f74568df3b1ff1f878b28ec4aa6eb86-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:28 GMT', 'content-type': 'application/octet-stream', 'content-length': '584', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:37 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 28, tzinfo=tzutc()), 'ContentLength': 584, 'ETag': '"6f74568df3b1ff1f878b28ec4aa6eb86-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } securityworker stdout | 2025-09-26 08:37:37,754 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4', 1, 0]) securityworker stdout | 2025-09-26 08:37:37,756 [86] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL (SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1")', [3, 'sha256:b762f678859bfa5c3948b5f1b04959aa43c8aba88e2389e281413d303d62a7e3', 1, 3, 'sha256:85014141f8b45859108c04c9cef9d6fdac78bc56732245f93b7cc03ed39ab377', 1]) securityworker stdout | 2025-09-26 08:37:37,758 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['2ff39502-4b8b-41a9-9125-e974478f5e0c']) securityworker stdout | 2025-09-26 08:37:37,760 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:37:37,760 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s)', [29]) securityworker stdout | 2025-09-26 08:37:37,761 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:37:37,763 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) securityworker stdout | 2025-09-26 08:37:37,764 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Indexing manifest [29] 4/alpine@sha256:e9025aa787330c0477c030dc7b7f134acadaf2c4a9dd9244ee43e575ffc92fa9 securityworker stdout | 2025-09-26 08:37:37,764 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,764 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,764 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,764 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:37,764 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,764 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:37,764 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:37,765 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:37,765 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:37,765 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:37,765 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:37,765 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:37,765 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,765 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:37,765 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:37,765 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876457 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b7/b762f678859bfa5c3948b5f1b04959aa43c8aba88e2389e281413d303d62a7e3 securityworker stdout | 2025-09-26 08:37:37,771 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EVTNMQ0pwWVhRaU9qRTNOVGc0TnpVNE5UY3NJbVY0Y0NJNk1UYzFPRGczTmpRMU55d2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aU55OWlOell5WmpZM09EZzFPV0ptWVRWak16azBPR0kxWmpGaU1EUTVOVGxoWVRRell6aGhZbUU0T0dVeU16ZzVaVEk0TVRReE0yUXpNRE5rTmpKaE4yVXpQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFQYlZkUU5WTlRPRkJLUTFGdVNEQTJPWGx1YUdsbk1UQkRhbmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRVM0lpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAubF9VV3RnZXZkdU5Kdk9DQUx3MEFhV3lXYXBCOFRuZmRZSHB5eDdYdXBSanVWR05qSGRQYTFMMURYQ09ZNHhURi1HN2lRUGplQnluV2RGUlZVa3RPcTV2VzZWMXFyZ21aV0g3Mi1JZEdRRzA2SmpwdG5vNktZSG1oc196T0hmMXB3TmhQd3FsRlpZbXFpTHAwbHdHdG1LbFZwbk5UUDBhSERhS0FqR3p1SXhTcFNlOWtQRGxDNy1ZdGpGSkVwNndWM2NLRHY2Q0hZNGZKX09PalF0VUJWcG5qaFk2VFJyQkxPWkw2aXN1aTJVR2FPZmZDMWN4VU15cDd3Q1BzU05udHRvWDgxT1FFdnZKYTZoV0UzTXNkdUhtUXZfNmxLakRBYjN1dU5hNGMzMUVQWnBvc2pGSXRkR2ZIOW5DUU5SQUI4c05nUmZVOERucmZTZ0NZZGZnbEVn/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b7/b762f678859bfa5c3948b5f1b04959aa43c8aba88e2389e281413d303d62a7e3?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=OmWP5SS8PJCQnH069ynhig10Cjw%3D&Expires=1758876457 securityworker stdout | 2025-09-26 08:37:37,771 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,771 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,771 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,771 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:37,771 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,771 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:37,771 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:37,771 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:37,771 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:37,771 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:37,771 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} notificationworker stdout | 2025-09-26 08:37:37,772 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:37:37,772 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:40.692901+00:00 (in 2.920585 seconds) securityworker stdout | 2025-09-26 08:37:37,772 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:37,772 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,772 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:37,772 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:37,772 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876457 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b7/b762f678859bfa5c3948b5f1b04959aa43c8aba88e2389e281413d303d62a7e3 notificationworker stdout | 2025-09-26 08:37:37,772 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:37 GMT)" (scheduled at 2025-09-26 08:37:37.771811+00:00) notificationworker stdout | 2025-09-26 08:37:37,772 [68] [DEBUG] [workers.queueworker] Running watchdog. notificationworker stdout | 2025-09-26 08:37:37,772 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:37 GMT)" executed successfully securityworker stdout | 2025-09-26 08:37:37,777 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EVTNMQ0pwWVhRaU9qRTNOVGc0TnpVNE5UY3NJbVY0Y0NJNk1UYzFPRGczTmpRMU55d2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aU55OWlOell5WmpZM09EZzFPV0ptWVRWak16azBPR0kxWmpGaU1EUTVOVGxoWVRRell6aGhZbUU0T0dVeU16ZzVaVEk0TVRReE0yUXpNRE5rTmpKaE4yVXpQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFQYlZkUU5WTlRPRkJLUTFGdVNEQTJPWGx1YUdsbk1UQkRhbmNsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRVM0lpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAubF9VV3RnZXZkdU5Kdk9DQUx3MEFhV3lXYXBCOFRuZmRZSHB5eDdYdXBSanVWR05qSGRQYTFMMURYQ09ZNHhURi1HN2lRUGplQnluV2RGUlZVa3RPcTV2VzZWMXFyZ21aV0g3Mi1JZEdRRzA2SmpwdG5vNktZSG1oc196T0hmMXB3TmhQd3FsRlpZbXFpTHAwbHdHdG1LbFZwbk5UUDBhSERhS0FqR3p1SXhTcFNlOWtQRGxDNy1ZdGpGSkVwNndWM2NLRHY2Q0hZNGZKX09PalF0VUJWcG5qaFk2VFJyQkxPWkw2aXN1aTJVR2FPZmZDMWN4VU15cDd3Q1BzU05udHRvWDgxT1FFdnZKYTZoV0UzTXNkdUhtUXZfNmxLakRBYjN1dU5hNGMzMUVQWnBvc2pGSXRkR2ZIOW5DUU5SQUI4c05nUmZVOERucmZTZ0NZZGZnbEVn/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/b7/b762f678859bfa5c3948b5f1b04959aa43c8aba88e2389e281413d303d62a7e3?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=OmWP5SS8PJCQnH069ynhig10Cjw%3D&Expires=1758876457 securityworker stdout | 2025-09-26 08:37:37,777 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,777 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,777 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,777 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:37,777 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,777 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:37,777 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:37,777 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:37,777 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:37,778 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:37,778 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:37,778 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:37,778 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,778 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:37,778 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:37,778 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876457 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:37:37,783 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EVTNMQ0pwWVhRaU9qRTNOVGc0TnpVNE5UY3NJbVY0Y0NJNk1UYzFPRGczTmpRMU55d2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFTZWtkMFMwaDRabG8zYTNNM1dYWnZjMjVrTTJWNGJuUlZWVGdsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRVM0lpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRmtnYUdJMllWc05hWU9jOUpvOU9wUnNjcGRydFFoczhHak93enhyWXMzaUdoSDBGdFRCOG9qeUVIWVV3OVlEWlAxckwwYzE0OHYzVHlCNFFYNnNIZ1l1OWROckVHeW9pMGRmRXhvcTJtOVMzT1BxR3hfdEgta2JtSURHdWNNcTFhWG80bDhFNWtadGhMRXRCcEZ4d3puSklSdW8zQk5QSWN4V1VNQnp3UGJ0b1lRR3JHcUw3RzVQZE5TQ0dTck5PdHRHQktPbnQyVHZ1WVFMS0pqOUZOclRBV1BfZGM5WlIyWU9WNWp3M1lZNEZJbndpaVpkekNoenZTR05Wck91ZHlBYWtKTnBPX2VLQXBKd3dRV1RsUlduZ3c4VEZHV2dUWUNSdHpHcGJqWE15RmhTVEhlTTdWOTF6TWE4Y250V19nTXlsVUZWSzVESmRvVndfdXhWVUZn/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=RzGtKHxfZ7ks7Yvosnd3exntUU8%3D&Expires=1758876457 securityworker stdout | 2025-09-26 08:37:37,783 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,783 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,783 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,783 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:37,783 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,783 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:37,783 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:37,784 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:37,784 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:37,784 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:37,784 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:37,784 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:37,784 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:37,784 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:37,784 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:37,785 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876457 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:37:37,790 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EVTNMQ0pwWVhRaU9qRTNOVGc0TnpVNE5UY3NJbVY0Y0NJNk1UYzFPRGczTmpRMU55d2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFTZWtkMFMwaDRabG8zYTNNM1dYWnZjMjVrTTJWNGJuUlZWVGdsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRVM0lpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuRmtnYUdJMllWc05hWU9jOUpvOU9wUnNjcGRydFFoczhHak93enhyWXMzaUdoSDBGdFRCOG9qeUVIWVV3OVlEWlAxckwwYzE0OHYzVHlCNFFYNnNIZ1l1OWROckVHeW9pMGRmRXhvcTJtOVMzT1BxR3hfdEgta2JtSURHdWNNcTFhWG80bDhFNWtadGhMRXRCcEZ4d3puSklSdW8zQk5QSWN4V1VNQnp3UGJ0b1lRR3JHcUw3RzVQZE5TQ0dTck5PdHRHQktPbnQyVHZ1WVFMS0pqOUZOclRBV1BfZGM5WlIyWU9WNWp3M1lZNEZJbndpaVpkekNoenZTR05Wck91ZHlBYWtKTnBPX2VLQXBKd3dRV1RsUlduZ3c4VEZHV2dUWUNSdHpHcGJqWE15RmhTVEhlTTdWOTF6TWE4Y250V19nTXlsVUZWSzVESmRvVndfdXhWVUZn/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=RzGtKHxfZ7ks7Yvosnd3exntUU8%3D&Expires=1758876457 securityworker stdout | 2025-09-26 08:37:37,791 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:37:37,791 [86] [DEBUG] [util.secscan.v4.api] POSTing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_report gunicorn-registry stdout | 2025-09-26 08:37:39,090 [251] [DEBUG] [app] Starting request: urn:request:c5281ee7-2529-477f-bc9e-f564c66e362c (/v2/) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:39,090 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {} gunicorn-registry stdout | 2025-09-26 08:37:39,090 [251] [DEBUG] [auth.registry_jwt_auth] No auth header. gunicorn-registry stdout | 2025-09-26 08:37:39,090 [251] [DEBUG] [app] Ending request: urn:request:c5281ee7-2529-477f-bc9e-f564c66e362c (/v2/) {'endpoint': 'v2.v2_support_enabled', 'request_id': 'urn:request:c5281ee7-2529-477f-bc9e-f564c66e362c', 'remote_addr': '10.129.4.11', 'http_method': 'GET', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/', 'path': '/v2/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'containers/5.29.5 (github.com/containers/image)'} gunicorn-registry stdout | 2025-09-26 08:37:39,091 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:39 +0000] "GET /v2/ HTTP/1.1" 401 4 "-" "containers/5.29.5 (github.com/containers/image)" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:39 +0000] "GET /v2/ HTTP/1.1" 401 4 "-" "containers/5.29.5 (github.com/containers/image)" (0.002 572 0.002) gunicorn-registry stdout | 2025-09-26 08:37:39,214 [251] [DEBUG] [app] Starting request: urn:request:eb17cf15-c8a2-4bdc-a4c8-cbd8a5d6f55f (/v2/auth) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:39,214 [251] [DEBUG] [auth.basic] Attempt to process basic auth header gunicorn-registry stdout | 2025-09-26 08:37:39,215 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE (("t1"."username" = %s) OR ("t1"."email" = %s)) LIMIT %s OFFSET %s', ['quay', 'quay', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:39,489 [251] [DEBUG] [auth.credentials] Successfully validated credentials for user quay gunicorn-registry stdout | 2025-09-26 08:37:39,490 [251] [DEBUG] [auth.decorators] Found valid auth result: (, False, None, [, None, None, None, None, None, None]) gunicorn-registry stdout | 2025-09-26 08:37:39,490 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:39,490 [251] [DEBUG] [auth.permissions] Deferring permissions for user with uuid: 9f776dce-7347-4b69-8bd5-3621034db23c gunicorn-registry stdout | 2025-09-26 08:37:39,490 [251] [DEBUG] [endpoints.v2.v2auth] Request audience: quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com gunicorn-registry stdout | 2025-09-26 08:37:39,490 [251] [DEBUG] [endpoints.v2.v2auth] Scope request: [] gunicorn-registry stdout | 2025-09-26 08:37:39,491 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."username" = %s) LIMIT %s OFFSET %s', ['quay', 1, 0]) gunicorn-registry stdout | 2025-09-26 08:37:39,492 [251] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "logentrykind" AS "t1"', []) gunicorn-registry stdout | 2025-09-26 08:37:39,494 [251] [DEBUG] [peewee] ('INSERT INTO "logentry3" ("kind_id", "account_id", "performer_id", "repository_id", "datetime", "ip", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s) RETURNING "logentry3"."id"', [97, 1, 1, None, datetime.datetime(2025, 9, 26, 8, 37, 39, 490630), '10.131.2.20', '{"kind": "user", "type": "v2auth", "useragent": "containers/5.29.5 (github.com/containers/image)"}']) gunicorn-registry stdout | 2025-09-26 08:37:39,503 [251] [DEBUG] [app] Ending request: urn:request:eb17cf15-c8a2-4bdc-a4c8-cbd8a5d6f55f (/v2/auth) {'endpoint': 'v2.generate_registry_jwt', 'request_id': 'urn:request:eb17cf15-c8a2-4bdc-a4c8-cbd8a5d6f55f', 'remote_addr': '10.131.2.20', 'http_method': 'GET', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/auth?account=quay&service=quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com', 'path': '/v2/auth', 'parameters': {'account': 'quay', 'service': 'quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com'}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'containers/5.29.5 (github.com/containers/image)'} gunicorn-registry stdout | 2025-09-26 08:37:39,503 [251] [DEBUG] [data.database] Disconnecting from database. gunicorn-registry stdout | 2025-09-26 08:37:39,503 [251] [DEBUG] [peewee.pool] Returning 140607466707904 to pool. nginx stdout | 10.131.2.20 (-) - quay [26/Sep/2025:08:37:39 +0000] "GET /v2/auth?account=quay&service=quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com HTTP/1.1" 200 963 "-" "containers/5.29.5 (github.com/containers/image)" (0.290 681 0.290) gunicorn-registry stdout | 2025-09-26 08:37:39,503 [251] [INFO] [gunicorn.access] 10.131.2.20 - quay [26/Sep/2025:08:37:39 +0000] "GET /v2/auth?account=quay&service=quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com HTTP/1.1" 200 963 "-" "containers/5.29.5 (github.com/containers/image)" gunicorn-registry stdout | 2025-09-26 08:37:39,506 [251] [DEBUG] [data.userevent] Published user event docker-cli: {'action': 'login'} gunicorn-web stdout | 2025-09-26 08:37:39,691 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:37:39,696 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:37:39,730 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:37:39,742 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:37:39,758 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gunicorn-registry stdout | 2025-09-26 08:37:39,778 [251] [DEBUG] [app] Starting request: urn:request:6dc44033-fc47-4195-bd55-25839f8f75b6 (/v2/) {'X-Forwarded-For': '66.187.232.127, 10.129.4.11'} gunicorn-registry stdout | 2025-09-26 08:37:39,779 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {} gunicorn-registry stdout | 2025-09-26 08:37:39,779 [251] [DEBUG] [auth.registry_jwt_auth] No auth header. gunicorn-registry stdout | 2025-09-26 08:37:39,779 [251] [DEBUG] [app] Ending request: urn:request:6dc44033-fc47-4195-bd55-25839f8f75b6 (/v2/) {'endpoint': 'v2.v2_support_enabled', 'request_id': 'urn:request:6dc44033-fc47-4195-bd55-25839f8f75b6', 'remote_addr': '10.129.4.11', 'http_method': 'GET', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/', 'path': '/v2/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:39,779 [251] [INFO] [gunicorn.access] 10.129.4.11 - - [26/Sep/2025:08:37:39 +0000] "GET /v2/ HTTP/1.1" 401 4 "-" "skopeo/1.14.5" nginx stdout | 10.129.4.11 (-) - - [26/Sep/2025:08:37:39 +0000] "GET /v2/ HTTP/1.1" 401 4 "-" "skopeo/1.14.5" (0.001 538 0.001) gcworker stdout | 2025-09-26 08:37:39,836 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} securityworker stdout | 2025-09-26 08:37:39,944 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "POST /indexer/api/v1/index_report HTTP/1.1" 201 None securityworker stdout | 2025-09-26 08:37:39,948 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [29, 1, 0]) securityworker stdout | 2025-09-26 08:37:39,949 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [29, 1, 0]) securityworker stdout | 2025-09-26 08:37:39,951 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:37:39,951 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/matcher/api/v1/vulnerability_report/sha256:e9025aa787330c0477c030dc7b7f134acadaf2c4a9dd9244ee43e575ffc92fa9 securityworker stdout | 2025-09-26 08:37:39,968 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /matcher/api/v1/vulnerability_report/sha256:e9025aa787330c0477c030dc7b7f134acadaf2c4a9dd9244ee43e575ffc92fa9 HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:37:39,971 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Attempting to create notifications for manifest #29 securityworker stdout | 2025-09-26 08:37:39,971 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE ("manifestsecuritystatus"."manifest_id" = %s)', [29]) securityworker stdout | 2025-09-26 08:37:39,972 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [29, 3, 2, '""', datetime.datetime(2025, 9, 26, 8, 37, 39, 972662), '37b46b4a70b6f1a19d5e4e18d21f57ff', 4, '{}']) securityworker stdout | 2025-09-26 08:37:39,975 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [30, 1, 0]) securityworker stdout | 2025-09-26 08:37:39,977 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 1, 0]) securityworker stdout | 2025-09-26 08:37:39,978 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['0dac0292-74e4-4964-86e5-5808ca139e8a']) securityworker stdout | 2025-09-26 08:37:39,979 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:37:39,980 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:37:39,980 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733'} securityworker stdout | 2025-09-26 08:37:39,980 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:39,980 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:39,980 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:39,980 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:39,980 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:39,980 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:39,980 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:39,981 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:39,981 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:39,981 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:39,981 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:39,981 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:39,981 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:39,981 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:39,981 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:37:39,981 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:39,981 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:39,981 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:39,981 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:39,981 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:37:39,981 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733 securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083739Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:37:39,981 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083739Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | 180b040c60864f399f5aa859f3750bf7562ea7dff38a5becb0d5d1dd34e9dc72 securityworker stdout | 2025-09-26 08:37:39,982 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | da8d714717818812d84534f91e28bf4131f1ab32adb4a03cc07bb6fc4f344e20 securityworker stdout | 2025-09-26 08:37:39,982 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:39,982 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:37:39,982 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:37:39,997 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/4d/4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733 HTTP/1.1" 200 241 securityworker stdout | 2025-09-26 08:37:39,997 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9vdb-2hmn1l-f94', 'x-amz-id-2': 'mg0l9vdb-2hmn1l-f94', 'ETag': '"5326b816e6e0a28dad7eaccd010d2a2a-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:30 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:39 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:37:39,997 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:37:39,998 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:39,998 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:37:39,998 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:39,998 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9vdb-2hmn1l-f94', 'HostId': 'mg0l9vdb-2hmn1l-f94', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9vdb-2hmn1l-f94', 'x-amz-id-2': 'mg0l9vdb-2hmn1l-f94', 'etag': '"5326b816e6e0a28dad7eaccd010d2a2a-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:30 GMT', 'content-type': 'application/octet-stream', 'content-length': '241', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:39 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 30, tzinfo=tzutc()), 'ContentLength': 241, 'ETag': '"5326b816e6e0a28dad7eaccd010d2a2a-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } securityworker stdout | 2025-09-26 08:37:40,001 [86] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL ((SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1") UNION ALL (SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "manifestblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q2"))', [3, 'sha256:af8ba8ed525578969be4e8587391aeae87258b03215037ba7cf7fd48e053a5e1', 1, 3, 'sha256:9a4c019c18310ac9c43fd41a2fb31d1b7999c9c3af2ac4b266b6adf006db6f33', 1, 3, 'sha256:4dbbc42c77da0678e9c71567077fa0d86ba324773ab40daaec7e49f2bc505733', 1]) securityworker stdout | 2025-09-26 08:37:40,003 [86] [ERROR] [data.registry_model.registry_oci_model] Could not list manifest layers `30` securityworker stdout | Traceback (most recent call last): securityworker stdout | File "/quay-registry/data/registry_model/registry_oci_model.py", line 666, in list_manifest_layers securityworker stdout | layers = self._list_manifest_layers( securityworker stdout | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ securityworker stdout | File "/quay-registry/data/registry_model/registry_oci_model.py", line 1263, in _list_manifest_layers securityworker stdout | for layer in layers: securityworker stdout | ^^^^^^ securityworker stdout | File "/quay-registry/image/oci/manifest.py", line 308, in get_layers securityworker stdout | command=image_layer.history.command, securityworker stdout | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ securityworker stdout | AttributeError: 'NoneType' object has no attribute 'command' securityworker stdout | 2025-09-26 08:37:40,004 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:37:40,005 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) securityworker stdout | 2025-09-26 08:37:40,005 [86] [WARNING] [data.secscan_model.secscan_v4_model] Cannot index 4/alpine@sha256:8bec0de62b43ed91fa736cf98c89e67e8b0593b1d543e02f2995a4ce80b17d1f due to manifest being invalid (manifest has no layers) securityworker stdout | 2025-09-26 08:37:40,006 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE (("manifestsecuritystatus"."manifest_id" = %s) AND ("manifestsecuritystatus"."repository_id" = %s))', [30, 3]) securityworker stdout | 2025-09-26 08:37:40,007 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [30, 3, -2, '{}', datetime.datetime(2025, 9, 26, 8, 37, 40, 6874), 'none', 4, '{}']) securityworker stdout | 2025-09-26 08:37:40,009 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [31, 1, 0]) securityworker stdout | 2025-09-26 08:37:40,011 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86', 1, 0]) securityworker stdout | 2025-09-26 08:37:40,012 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['95e26042-e014-4f93-bb24-49057896bbbc']) securityworker stdout | 2025-09-26 08:37:40,013 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:37:40,014 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:37:40,014 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/fd/fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86'} securityworker stdout | 2025-09-26 08:37:40,014 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,014 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,014 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,014 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:40,014 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,014 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:40,014 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:40,014 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:40,014 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:40,014 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:40,014 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:40,014 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,014 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,014 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,015 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/fd/fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fd/fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fd/fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/fd/fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:37:40,015 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:40,015 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:40,015 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,015 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,015 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:37:40,015 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fd/fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86 securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083740Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:37:40,015 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083740Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | deaa8cd485d6fc4e2352b50835eae1321fe7174fda2322d1db478a5e7d3d2a3b securityworker stdout | 2025-09-26 08:37:40,015 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | ae0fe886fda627abb535f5897e17697d3ed6d7fd056bd120199d1b8fc6e1e2d5 securityworker stdout | 2025-09-26 08:37:40,015 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,015 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:37:40,015 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityscanningnotificationworker stdout | 2025-09-26 08:37:40,022 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} securityworker stdout | 2025-09-26 08:37:40,031 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/fd/fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86 HTTP/1.1" 200 584 securityworker stdout | 2025-09-26 08:37:40,031 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ve8-31ici3-v2v', 'x-amz-id-2': 'mg0l9ve8-31ici3-v2v', 'ETag': '"00318939fab3984e597fce89e3a44d6f-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:32 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '584', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:40 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:37:40,031 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:37:40,031 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,032 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:37:40,032 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:40,032 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9ve8-31ici3-v2v', 'HostId': 'mg0l9ve8-31ici3-v2v', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9ve8-31ici3-v2v', 'x-amz-id-2': 'mg0l9ve8-31ici3-v2v', 'etag': '"00318939fab3984e597fce89e3a44d6f-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:32 GMT', 'content-type': 'application/octet-stream', 'content-length': '584', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:40 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 32, tzinfo=tzutc()), 'ContentLength': 584, 'ETag': '"00318939fab3984e597fce89e3a44d6f-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } securityworker stdout | 2025-09-26 08:37:40,034 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4', 1, 0]) securityworker stdout | 2025-09-26 08:37:40,035 [86] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL (SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1")', [3, 'sha256:fdfaeff667ccd84e58a1c243e36b455dbf802bd675880748ba2be8d1e3ae4f86', 1, 3, 'sha256:cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da', 1]) securityworker stdout | 2025-09-26 08:37:40,036 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['16f70353-441f-4697-93cc-00fbdb7cec9f']) securityworker stdout | 2025-09-26 08:37:40,038 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:37:40,038 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s)', [31]) securityworker stdout | 2025-09-26 08:37:40,039 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:37:40,040 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) securityworker stdout | 2025-09-26 08:37:40,041 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Indexing manifest [31] 4/alpine@sha256:5938519b4c46e95da0bb5accefcb8f3b5dde38f421b557ba2ff3f70d59706ab9 securityworker stdout | 2025-09-26 08:37:40,041 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,041 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,041 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,041 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:40,041 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,041 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:40,041 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:40,042 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:40,042 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:40,042 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:40,042 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:40,042 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:40,042 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,042 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:40,042 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:40,042 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876460 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da securityworker stdout | 2025-09-26 08:37:40,048 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EWXdMQ0pwWVhRaU9qRTNOVGc0TnpVNE5qQXNJbVY0Y0NJNk1UYzFPRGczTmpRMk1Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5allpOWpZbVUzTURnd1lqVTNPRE5rWlRFd05HRmtOamRtWmpRMU9UVmlabUU0WVdVM01HRTFPVGN4T0RGaE9EUTJNakZtTlRGak5XTmpaREE0TkRJeE9HUmhQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFaYVc1c2FVTjJibEZrY21WVlIyaEdOVmw1VlVsUlZ6bFZjVmtsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRZd0lpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuSS1IanU3UTNGWnlFTFZZMVRkNmlxNG9hS2VNRWVtc0dXLXlMdzhoLVAtV0dsZ0paeXRJM2pqa2laajk2djU2WmMxS2hMNE1nRVMzSU1XV2R6R25mcFJZZjZ1UnRkQlhMdUdvaXZlM2hKV3JDbkJONUQ4YzNiMktScEU1NUticWo0bVZ5U0s3cVFxOFp3N3N0SWpOUk9WcFN2dHBHMFBNeS01R0V2N051bzFqZGVkVE9XSF9ZYzl3cnk2WGtscXQ4REFRRTRiVWhBNjhPRXRwU3Z1akhVR3FaTEpOeENkRVc5WWdLT2hHTkNlbUNVWUU5OHpqVnhuN05wcUxYbkZ6ZmFBenRtcjlSY1ViVFdyLWZ5bHJjbnZxSFhoWnBNWndKOXJkRFA1Tmk2VG9IckhubUxaMlVMWmlHSnBaS3dMNjdRV1dPdS1tc0MxYzBJQmtmaHVKTTZ3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=YinliCvnQdreUGhF5YyUIQW9UqY%3D&Expires=1758876460 securityworker stdout | 2025-09-26 08:37:40,048 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,048 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,048 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,048 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:40,048 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,048 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:40,048 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:40,048 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:40,048 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:40,048 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:40,049 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:40,049 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:40,049 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,049 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:40,049 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:40,049 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876460 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da securityworker stdout | 2025-09-26 08:37:40,054 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EWXdMQ0pwWVhRaU9qRTNOVGc0TnpVNE5qQXNJbVY0Y0NJNk1UYzFPRGczTmpRMk1Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5allpOWpZbVUzTURnd1lqVTNPRE5rWlRFd05HRmtOamRtWmpRMU9UVmlabUU0WVdVM01HRTFPVGN4T0RGaE9EUTJNakZtTlRGak5XTmpaREE0TkRJeE9HUmhQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFaYVc1c2FVTjJibEZrY21WVlIyaEdOVmw1VlVsUlZ6bFZjVmtsTTBRbVJYaHdhWEpsY3oweE56VTRPRGMyTkRZd0lpd2lhRzl6ZENJNkluTXpMbTl3Wlc1emFHbG1kQzF6ZEc5eVlXZGxMbk4yWXk1amJIVnpkR1Z5TG14dlkyRnNPalEwTXlJc0luTmphR1Z0WlNJNkltaDBkSEJ6SW4xZExDSmpiMjUwWlhoMElqcDdmWDAuSS1IanU3UTNGWnlFTFZZMVRkNmlxNG9hS2VNRWVtc0dXLXlMdzhoLVAtV0dsZ0paeXRJM2pqa2laajk2djU2WmMxS2hMNE1nRVMzSU1XV2R6R25mcFJZZjZ1UnRkQlhMdUdvaXZlM2hKV3JDbkJONUQ4YzNiMktScEU1NUticWo0bVZ5U0s3cVFxOFp3N3N0SWpOUk9WcFN2dHBHMFBNeS01R0V2N051bzFqZGVkVE9XSF9ZYzl3cnk2WGtscXQ4REFRRTRiVWhBNjhPRXRwU3Z1akhVR3FaTEpOeENkRVc5WWdLT2hHTkNlbUNVWUU5OHpqVnhuN05wcUxYbkZ6ZmFBenRtcjlSY1ViVFdyLWZ5bHJjbnZxSFhoWnBNWndKOXJkRFA1Tmk2VG9IckhubUxaMlVMWmlHSnBaS3dMNjdRV1dPdS1tc0MxYzBJQmtmaHVKTTZ3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/cb/cbe7080b5783de104ad67ff4595bfa8ae70a597181a84621f51c5ccd084218da?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=YinliCvnQdreUGhF5YyUIQW9UqY%3D&Expires=1758876460 securityworker stdout | 2025-09-26 08:37:40,055 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,055 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,055 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,055 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:40,055 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,055 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:40,055 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:40,055 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:40,055 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:40,055 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:40,055 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:40,055 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:40,055 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,056 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:40,056 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:40,056 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876460 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:37:40,061 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EWXdMQ0pwWVhRaU9qRTNOVGc0TnpVNE5qQXNJbVY0Y0NJNk1UYzFPRGczTmpRMk1Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFVYkdSQ2JGUkRVMDFIWjJGQlJsRmtkbUZUZVNVeVJta3pkWGd3VFNVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME5qQWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuQmJTbjNzN0ZKei02Y0hhYzNLVVpjMWZKNk1xZXZUWE1RSXlDdEt2VXpLMDFuT2hTczQ3OEY2ZHprR0JHN0VncUI0MnJYelZLT1dZUVNldHZqQzhuSDIwZWM5T09GblltX29KNURSQU5HS3NRWlJwNHNPR3UtZVVxcjYtaVdhQmdNdm1sX240RzU5clBnWkprTDhfc0wwVV8wWGV4LTJ3dzFjeUtUT2lHSGh2aDVLdDdEWW1nQ0ZGa3ZGME8xQVRMa0I5THJPLVgxQUNFSldwTC1aWFBIeC1qQU5NTkxkWHlCaGwxNXdhSUg0V1RZOC1vWmhIbXA1Uy1pOElIa0xENHV4c21BWTVLSVgtMG9xM3o1WEV4SjFnaEpzTUdsZ3h6WHJuNHdpVnlRbVdhdTFGSWc2c3haNERiMVVKbzVIc0NUVi10YjFnUEtlSnpWOVh2X096RFd3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=TldBlTCSMGgaAFQdvaSy%2Fi3ux0M%3D&Expires=1758876460 securityworker stdout | 2025-09-26 08:37:40,061 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,061 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,061 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,061 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:40,061 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,061 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:40,061 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:40,061 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:40,061 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:40,061 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:40,061 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:40,061 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:40,062 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:40,062 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:40,062 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:40,062 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876460 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:37:40,067 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EWXdMQ0pwWVhRaU9qRTNOVGc0TnpVNE5qQXNJbVY0Y0NJNk1UYzFPRGczTmpRMk1Dd2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFVYkdSQ2JGUkRVMDFIWjJGQlJsRmtkbUZUZVNVeVJta3pkWGd3VFNVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME5qQWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuQmJTbjNzN0ZKei02Y0hhYzNLVVpjMWZKNk1xZXZUWE1RSXlDdEt2VXpLMDFuT2hTczQ3OEY2ZHprR0JHN0VncUI0MnJYelZLT1dZUVNldHZqQzhuSDIwZWM5T09GblltX29KNURSQU5HS3NRWlJwNHNPR3UtZVVxcjYtaVdhQmdNdm1sX240RzU5clBnWkprTDhfc0wwVV8wWGV4LTJ3dzFjeUtUT2lHSGh2aDVLdDdEWW1nQ0ZGa3ZGME8xQVRMa0I5THJPLVgxQUNFSldwTC1aWFBIeC1qQU5NTkxkWHlCaGwxNXdhSUg0V1RZOC1vWmhIbXA1Uy1pOElIa0xENHV4c21BWTVLSVgtMG9xM3o1WEV4SjFnaEpzTUdsZ3h6WHJuNHdpVnlRbVdhdTFGSWc2c3haNERiMVVKbzVIc0NUVi10YjFnUEtlSnpWOVh2X096RFd3/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=TldBlTCSMGgaAFQdvaSy%2Fi3ux0M%3D&Expires=1758876460 securityworker stdout | 2025-09-26 08:37:40,067 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:37:40,067 [86] [DEBUG] [util.secscan.v4.api] POSTing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_report queuecleanupworker stdout | 2025-09-26 08:37:40,237 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} gunicorn-registry stdout | 2025-09-26 08:37:40,243 [251] [DEBUG] [app] Starting request: urn:request:b18e5233-bf74-4f79-8e4d-630835085025 (/v2/) {'X-Forwarded-For': '66.187.232.127, 10.131.2.20'} gunicorn-registry stdout | 2025-09-26 08:37:40,243 [251] [DEBUG] [auth.registry_jwt_auth] Called with params: (), {} gunicorn-registry stdout | 2025-09-26 08:37:40,243 [251] [DEBUG] [auth.registry_jwt_auth] Validating auth header: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODYwLCJpYXQiOjE3NTg4NzU4NjAsImV4cCI6MTc1ODg3OTQ2MCwic3ViIjoicXVheSIsImFjY2VzcyI6W10sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7fSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.2viHzFh9N04pt5NXFsma6vegZLenxk8OQ-F6vuga7stKaz-0wJjaT5t_c0Hi3zFANENSidssbpMgSWW_gI_7-UBQGKPeye2pb8jFa0x2tYEfFWh1n17iRMUF0esJi8UmzGPocq2828ueCg-8WHUCaHCOgT3nfxJrSclrV6pHbgc5TkkpgdVWatXYYXmkwuKJcwKE5P6TkecYWYptoyi0u9MXMbIq1Mnb_9UYmSKhK24oxlzdEsx5bwmloRaiq7utw8wUTBOEgOnwCKVXhPdrdJxbOdPhDDUzOcHBQ0Asqq-uELyaSw6UM9WIgL_xH6rfLH28HGQPKgz4VzHsrNKd8A gunicorn-registry stdout | 2025-09-26 08:37:40,243 [251] [DEBUG] [util.security.registry_jwt] encoded JWT: eyJhbGciOiJSUzI1NiIsImtpZCI6Ik5rVFF6OTVxYW9aRUlCMHFmVzRJMkpFQ2ZPbkc0d0dtbmdzbnJ4ZmxaTFEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJxdWF5IiwiYXVkIjoicXVheXJlZ2lzdHJ5LXF1YXktcXVheS1lbnRlcnByaXNlLTE1NDc1LmFwcHMucXVheXRlc3QtMTU0NzUucWUuZGV2Y2x1c3Rlci5vcGVuc2hpZnQuY29tIiwibmJmIjoxNzU4ODc1ODYwLCJpYXQiOjE3NTg4NzU4NjAsImV4cCI6MTc1ODg3OTQ2MCwic3ViIjoicXVheSIsImFjY2VzcyI6W10sImNvbnRleHQiOnsidmVyc2lvbiI6MiwiZW50aXR5X2tpbmQiOiJ1c2VyIiwiZW50aXR5X3JlZmVyZW5jZSI6IjlmNzc2ZGNlLTczNDctNGI2OS04YmQ1LTM2MjEwMzRkYjIzYyIsImtpbmQiOiJ1c2VyIiwidXNlciI6InF1YXkiLCJjb20uYXBvc3RpbGxlLnJvb3RzIjp7fSwiY29tLmFwb3N0aWxsZS5yb290IjoiJGRpc2FibGVkIn19.2viHzFh9N04pt5NXFsma6vegZLenxk8OQ-F6vuga7stKaz-0wJjaT5t_c0Hi3zFANENSidssbpMgSWW_gI_7-UBQGKPeye2pb8jFa0x2tYEfFWh1n17iRMUF0esJi8UmzGPocq2828ueCg-8WHUCaHCOgT3nfxJrSclrV6pHbgc5TkkpgdVWatXYYXmkwuKJcwKE5P6TkecYWYptoyi0u9MXMbIq1Mnb_9UYmSKhK24oxlzdEsx5bwmloRaiq7utw8wUTBOEgOnwCKVXhPdrdJxbOdPhDDUzOcHBQ0Asqq-uELyaSw6UM9WIgL_xH6rfLH28HGQPKgz4VzHsrNKd8A gunicorn-registry stdout | 2025-09-26 08:37:40,244 [251] [DEBUG] [auth.permissions] Identity loaded: gunicorn-registry stdout | 2025-09-26 08:37:40,244 [251] [DEBUG] [auth.permissions] Loaded signed_jwt identity for: quay gunicorn-registry stdout | 2025-09-26 08:37:40,244 [251] [DEBUG] [auth.registry_jwt_auth] Identity changed to quay gunicorn-registry stdout | 2025-09-26 08:37:40,244 [251] [DEBUG] [auth.registry_jwt_auth] Auth context set to {'version': 2, 'entity_kind': 'user', 'entity_reference': '9f776dce-7347-4b69-8bd5-3621034db23c', 'kind': 'user', 'user': 'quay', 'com.apostille.roots': {}, 'com.apostille.root': '$disabled'} gunicorn-registry stdout | 2025-09-26 08:37:40,245 [251] [DEBUG] [app] Ending request: urn:request:b18e5233-bf74-4f79-8e4d-630835085025 (/v2/) {'endpoint': 'v2.v2_support_enabled', 'request_id': 'urn:request:b18e5233-bf74-4f79-8e4d-630835085025', 'remote_addr': '10.131.2.20', 'http_method': 'GET', 'original_url': 'https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/v2/', 'path': '/v2/', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'skopeo/1.14.5'} gunicorn-registry stdout | 2025-09-26 08:37:40,245 [251] [INFO] [gunicorn.access] 10.131.2.20 - - [26/Sep/2025:08:37:40 +0000] "GET /v2/ HTTP/1.1" 200 4 "-" "skopeo/1.14.5" nginx stdout | 10.131.2.20 (-) - - [26/Sep/2025:08:37:40 +0000] "GET /v2/ HTTP/1.1" 200 4 "-" "skopeo/1.14.5" (0.003 1512 0.003) gunicorn-secscan stdout | 2025-09-26 08:37:40,412 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} gunicorn-secscan stdout | 2025-09-26 08:37:40,419 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:37:40,424 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} autopruneworker stdout | 2025-09-26 08:37:40,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:37:40,598 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:10.598100+00:00 (in 29.999576 seconds) autopruneworker stdout | 2025-09-26 08:37:40,598 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:10 GMT)" (scheduled at 2025-09-26 08:37:40.598100+00:00) autopruneworker stdout | 2025-09-26 08:37:40,603 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758872260603, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:37:40,607 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:37:40,607 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:37:40,607 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:10 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:37:40,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:37:40,694 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:50.692901+00:00 (in 9.998871 seconds) notificationworker stdout | 2025-09-26 08:37:40,694 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:50 GMT)" (scheduled at 2025-09-26 08:37:40.692901+00:00) notificationworker stdout | 2025-09-26 08:37:40,694 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:37:40,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 37, 40, 694403), True, datetime.datetime(2025, 9, 26, 8, 37, 40, 694403), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:37:40,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:37:40,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:37:40,702 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:50 GMT)" executed successfully chunkcleanupworker stdout | 2025-09-26 08:37:41,061 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} securityworker stdout | 2025-09-26 08:37:41,583 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "POST /indexer/api/v1/index_report HTTP/1.1" 201 None securityworker stdout | 2025-09-26 08:37:41,586 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [31, 1, 0]) securityworker stdout | 2025-09-26 08:37:41,588 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [31, 1, 0]) securityworker stdout | 2025-09-26 08:37:41,588 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:37:41,588 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/matcher/api/v1/vulnerability_report/sha256:5938519b4c46e95da0bb5accefcb8f3b5dde38f421b557ba2ff3f70d59706ab9 securityworker stdout | 2025-09-26 08:37:41,612 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /matcher/api/v1/vulnerability_report/sha256:5938519b4c46e95da0bb5accefcb8f3b5dde38f421b557ba2ff3f70d59706ab9 HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:37:41,615 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Attempting to create notifications for manifest #31 securityworker stdout | 2025-09-26 08:37:41,615 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE ("manifestsecuritystatus"."manifest_id" = %s)', [31]) securityworker stdout | 2025-09-26 08:37:41,616 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [31, 3, 2, '""', datetime.datetime(2025, 9, 26, 8, 37, 41, 616320), '37b46b4a70b6f1a19d5e4e18d21f57ff', 4, '{}']) securityworker stdout | 2025-09-26 08:37:41,618 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [32, 1, 0]) securityworker stdout | 2025-09-26 08:37:41,620 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:37dc4eb1e038271aa75c594888e6bcab821893a8a033e18713088a88c9b1f890', 1, 0]) securityworker stdout | 2025-09-26 08:37:41,622 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['4fd5679a-d624-412b-85ff-82ea30a0e955']) securityworker stdout | 2025-09-26 08:37:41,623 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:37:41,623 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:37:41,624 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/37/37dc4eb1e038271aa75c594888e6bcab821893a8a033e18713088a88c9b1f890'} securityworker stdout | 2025-09-26 08:37:41,624 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,624 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,624 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,624 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,624 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,624 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:41,624 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:41,624 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:41,624 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:41,624 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:41,624 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:41,625 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,625 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,625 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,625 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/37/37dc4eb1e038271aa75c594888e6bcab821893a8a033e18713088a88c9b1f890', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/37/37dc4eb1e038271aa75c594888e6bcab821893a8a033e18713088a88c9b1f890', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/37/37dc4eb1e038271aa75c594888e6bcab821893a8a033e18713088a88c9b1f890', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/37/37dc4eb1e038271aa75c594888e6bcab821893a8a033e18713088a88c9b1f890'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:37:41,625 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,625 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,625 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,625 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,625 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:37:41,625 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/37/37dc4eb1e038271aa75c594888e6bcab821893a8a033e18713088a88c9b1f890 securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083741Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:37:41,625 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083741Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | c08bbaeba717e88a33b9dc419da1dac2da2007371fb38abbd93ea026d813491e securityworker stdout | 2025-09-26 08:37:41,625 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | f72738862212a863745da2f814ccaa5782db5f8ba3dad0a561d41abf88ceecbb securityworker stdout | 2025-09-26 08:37:41,625 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,625 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:37:41,626 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:37:41,649 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/37/37dc4eb1e038271aa75c594888e6bcab821893a8a033e18713088a88c9b1f890 HTTP/1.1" 200 241 securityworker stdout | 2025-09-26 08:37:41,649 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9wmz-d5cznm-19nk', 'x-amz-id-2': 'mg0l9wmz-d5cznm-19nk', 'ETag': '"ea6430a6b1a5037bd220491587f4f5f4-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:34 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:41 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:37:41,649 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:37:41,650 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,650 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:37:41,650 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,650 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9wmz-d5cznm-19nk', 'HostId': 'mg0l9wmz-d5cznm-19nk', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9wmz-d5cznm-19nk', 'x-amz-id-2': 'mg0l9wmz-d5cznm-19nk', 'etag': '"ea6430a6b1a5037bd220491587f4f5f4-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:34 GMT', 'content-type': 'application/octet-stream', 'content-length': '241', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:41 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 34, tzinfo=tzutc()), 'ContentLength': 241, 'ETag': '"ea6430a6b1a5037bd220491587f4f5f4-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } securityworker stdout | 2025-09-26 08:37:41,653 [86] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL ((SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1") UNION ALL (SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "manifestblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q2"))', [3, 'sha256:3e6038a336055d76ae316ad8dabbe9b1d6697a955edde70eddc2f11123344af5', 1, 3, 'sha256:d1e7d10cb51f8fe3bc6baa0c42ae8d782c6f053efe98a3d70dafd2ca52f1f021', 1, 3, 'sha256:37dc4eb1e038271aa75c594888e6bcab821893a8a033e18713088a88c9b1f890', 1]) securityworker stdout | 2025-09-26 08:37:41,654 [86] [ERROR] [data.registry_model.registry_oci_model] Could not list manifest layers `32` securityworker stdout | Traceback (most recent call last): securityworker stdout | File "/quay-registry/data/registry_model/registry_oci_model.py", line 666, in list_manifest_layers securityworker stdout | layers = self._list_manifest_layers( securityworker stdout | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ securityworker stdout | File "/quay-registry/data/registry_model/registry_oci_model.py", line 1263, in _list_manifest_layers securityworker stdout | for layer in layers: securityworker stdout | ^^^^^^ securityworker stdout | File "/quay-registry/image/oci/manifest.py", line 308, in get_layers securityworker stdout | command=image_layer.history.command, securityworker stdout | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ securityworker stdout | AttributeError: 'NoneType' object has no attribute 'command' securityworker stdout | 2025-09-26 08:37:41,655 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:37:41,656 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) securityworker stdout | 2025-09-26 08:37:41,657 [86] [WARNING] [data.secscan_model.secscan_v4_model] Cannot index 4/alpine@sha256:83a4745a9c165dd4da61a49ddb76550909859bf6ed62d41974e31559eec7fb8e due to manifest being invalid (manifest has no layers) securityworker stdout | 2025-09-26 08:37:41,657 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE (("manifestsecuritystatus"."manifest_id" = %s) AND ("manifestsecuritystatus"."repository_id" = %s))', [32, 3]) securityworker stdout | 2025-09-26 08:37:41,658 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [32, 3, -2, '{}', datetime.datetime(2025, 9, 26, 8, 37, 41, 658254), 'none', 4, '{}']) securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Marking id range as completed: 29-33 by worker securityworker stdout | 2025-09-26 08:37:41,660 [86] [DEBUG] [util.migrate.allocator] Marking id range as completed: 29-33 by worker securityworker stdout | 2025-09-26 08:37:41,660 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 29-33 securityworker stdout | 2025-09-26 08:37:41,660 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 29-33 securityworker stdout | 2025-09-26 08:37:41,660 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:37:41,660 [86] [DEBUG] [util.migrate.allocator] Total range: 28-34 securityworker stdout | 2025-09-26 08:37:41,660 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:37:41,660 [86] [DEBUG] [util.migrate.allocator] Right range 29-33 securityworker stdout | 2025-09-26 08:37:41,660 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 28-29 securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 29-33 securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 29-33 securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Total range: 28-34 securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Right range 29-33 securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 28-29 securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:37:41,660 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:37:41,661 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 28, 32]) securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 28-32 by worker securityworker stdout | 2025-09-26 08:37:41,662 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 28-32 by worker securityworker stdout | 2025-09-26 08:37:41,662 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 28-32 securityworker stdout | 2025-09-26 08:37:41,662 [86] [DEBUG] [util.migrate.allocator] Merging with block 29-33 securityworker stdout | 2025-09-26 08:37:41,662 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 33 securityworker stdout | 2025-09-26 08:37:41,663 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:37:41,663 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:41,663 [86] [DEBUG] [util.migrate.allocator] Total range: 33-34 securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 28-32 securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Merging with block 29-33 securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 33 securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Total range: 33-34 securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:41,663 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:41,663 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 33-34 securityworker stdout | 2025-09-26 08:37:41,663 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 33 securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 33-34 securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 33 securityworker stdout | 2025-09-26 08:37:41,663 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 33, 34]) securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Found 1 candidates, processing block start: 33 end: 34 by worker securityworker stdout | 2025-09-26 08:37:41,664 [86] [DEBUG] [util.migrate.allocator] Found 1 candidates, processing block start: 33 end: 34 by worker securityworker stdout | 2025-09-26 08:37:41,665 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [33, 1, 0]) securityworker stdout | 2025-09-26 08:37:41,667 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2', 1, 0]) securityworker stdout | 2025-09-26 08:37:41,668 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['f647cfe7-f327-443b-bf19-34bb0f088bc7']) securityworker stdout | 2025-09-26 08:37:41,669 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:37:41,669 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:37:41,669 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/2a/2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2'} securityworker stdout | 2025-09-26 08:37:41,669 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,669 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,669 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,669 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,669 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,670 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:41,670 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:41,670 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:41,670 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:41,670 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:41,670 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:41,670 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,670 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,670 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,670 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/2a/2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/2a/2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/2a/2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/2a/2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:37:41,670 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,670 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,670 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,670 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,670 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:37:41,670 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/2a/2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2 securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083741Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:37:41,670 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083741Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | 504d072d41f7e31717cae782301afe37e30c9c378c8704bbbc87c5f99d0f0ed8 securityworker stdout | 2025-09-26 08:37:41,670 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | bcd616ff87390a34d00fd86387e49d08f0ce911b00eca7d2854172d1191f30d7 securityworker stdout | 2025-09-26 08:37:41,670 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,671 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:37:41,671 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:37:41,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:37:41,685 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:07.683505+00:00 (in 25.998088 seconds) securityworker stdout | 2025-09-26 08:37:41,685 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:11 GMT)" (scheduled at 2025-09-26 08:37:41.684816+00:00) securityworker stdout | 2025-09-26 08:37:41,685 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:37:41,685 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:37:41,686 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/2a/2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2 HTTP/1.1" 200 580 securityworker stdout | 2025-09-26 08:37:41,687 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9wo8-dvvkbp-7j0', 'x-amz-id-2': 'mg0l9wo8-dvvkbp-7j0', 'ETag': '"1d618db65765ad3e9325f8ce6eb88cb7-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:36 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '580', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:41 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:37:41,687 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:37:41,687 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,688 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:37:41,688 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,688 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9wo8-dvvkbp-7j0', 'HostId': 'mg0l9wo8-dvvkbp-7j0', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9wo8-dvvkbp-7j0', 'x-amz-id-2': 'mg0l9wo8-dvvkbp-7j0', 'etag': '"1d618db65765ad3e9325f8ce6eb88cb7-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:36 GMT', 'content-type': 'application/octet-stream', 'content-length': '580', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:41 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 36, tzinfo=tzutc()), 'ContentLength': 580, 'ETag': '"1d618db65765ad3e9325f8ce6eb88cb7-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } securityworker stdout | 2025-09-26 08:37:41,690 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4', 1, 0]) securityworker stdout | 2025-09-26 08:37:41,690 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:37:41,691 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:37:41,692 [86] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL (SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1")', [3, 'sha256:5d29754ce036967079405405a04a54a7d3f8ba85e0057b6bdda3d03aa59c8361', 1, 3, 'sha256:2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2', 1]) securityworker stdout | 2025-09-26 08:37:41,694 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['03b02809-8f51-4afc-b064-91b2ba8583d2']) securityworker stdout | 2025-09-26 08:37:41,695 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:37:41,696 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s)', [33]) securityworker stdout | 2025-09-26 08:37:41,696 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:37:41,697 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) securityworker stdout | 2025-09-26 08:37:41,698 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Indexing manifest [33] 4/alpine@sha256:9e7331b8f4bbe798fca28aac7f6844896b436984b3412076e2890069b3ef397e securityworker stdout | 2025-09-26 08:37:41,698 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,698 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,698 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,698 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,698 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,698 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:41,698 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:41,698 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:41,698 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:41,698 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:41,698 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:41,698 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,698 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,698 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:41,698 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:41,699 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876461 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5d/5d29754ce036967079405405a04a54a7d3f8ba85e0057b6bdda3d03aa59c8361 securityworker stdout | 2025-09-26 08:37:41,704 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EWXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE5qRXNJbVY0Y0NJNk1UYzFPRGczTmpRMk1Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4MVpDODFaREk1TnpVMFkyVXdNelk1Tmpjd056azBNRFUwTURWaE1EUmhOVFJoTjJRelpqaGlZVGcxWlRBd05UZGlObUprWkdFelpEQXpZV0UxT1dNNE16WXhQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDA0V0VFbE1rWm5RVk5rUkVjM2JpVXlSbXR3T0RoWWNXTkJVWEpqZVc1QkpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qUTJNU0lzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5oUlpNcmcwVWlqeWRCX29TMlNNWVVsMFY3RzR0Z1d4bTM1aVlUSlRyYTBwSk9mZkRzNWVJXzluZXNUTzRyQ0dWY1hNU0FxVXhsd3FKenZESU1jaHpZVzJFaXF3dGVwNXJzcUQ3TDhNNlJ4dUJtNTRIQUZyQVo2bjdicmFZczNwa3czejlzNkgwdHJ5Y2JVOFFFWXVfZnlVYVVGZnJKQ1JoMlF2MEw3OS1xSWdjaGdUWU82V1NSMlFmRGg0VXZIWVE2Umd5Mm1GeUwtUHUyck1sZnpCZlI2UWFpU0lFckpSVUplT3pOZnluOV9neWdCem1ZLTZYd0xFNnJwalByaVBpcXUwX3JVdkxnVExBVTQ4R3JaQ0pfNExDWGlxbVdBUjZaMk1QV0FqcUJRd01wNzU2REVXQkxPaVVCTkJZdDRlV0doSjBRUnlDY0FSZDBjSGxpQjNvVkE=/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5d/5d29754ce036967079405405a04a54a7d3f8ba85e0057b6bdda3d03aa59c8361?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=8XA%2FgASdDG7n%2Fkp88XqcAQrcynA%3D&Expires=1758876461 securityworker stdout | 2025-09-26 08:37:41,704 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,705 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,705 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,705 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,705 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,705 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:41,705 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:41,705 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:41,705 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:41,705 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:41,705 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:41,705 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,705 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,705 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:41,705 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:41,705 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876461 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5d/5d29754ce036967079405405a04a54a7d3f8ba85e0057b6bdda3d03aa59c8361 securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:37:41,711 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:37:41,711 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:41,711 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EWXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE5qRXNJbVY0Y0NJNk1UYzFPRGczTmpRMk1Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4MVpDODFaREk1TnpVMFkyVXdNelk1Tmpjd056azBNRFUwTURWaE1EUmhOVFJoTjJRelpqaGlZVGcxWlRBd05UZGlObUprWkdFelpEQXpZV0UxT1dNNE16WXhQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDA0V0VFbE1rWm5RVk5rUkVjM2JpVXlSbXR3T0RoWWNXTkJVWEpqZVc1QkpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qUTJNU0lzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5oUlpNcmcwVWlqeWRCX29TMlNNWVVsMFY3RzR0Z1d4bTM1aVlUSlRyYTBwSk9mZkRzNWVJXzluZXNUTzRyQ0dWY1hNU0FxVXhsd3FKenZESU1jaHpZVzJFaXF3dGVwNXJzcUQ3TDhNNlJ4dUJtNTRIQUZyQVo2bjdicmFZczNwa3czejlzNkgwdHJ5Y2JVOFFFWXVfZnlVYVVGZnJKQ1JoMlF2MEw3OS1xSWdjaGdUWU82V1NSMlFmRGg0VXZIWVE2Umd5Mm1GeUwtUHUyck1sZnpCZlI2UWFpU0lFckpSVUplT3pOZnluOV9neWdCem1ZLTZYd0xFNnJwalByaVBpcXUwX3JVdkxnVExBVTQ4R3JaQ0pfNExDWGlxbVdBUjZaMk1QV0FqcUJRd01wNzU2REVXQkxPaVVCTkJZdDRlV0doSjBRUnlDY0FSZDBjSGxpQjNvVkE=/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5d/5d29754ce036967079405405a04a54a7d3f8ba85e0057b6bdda3d03aa59c8361?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=8XA%2FgASdDG7n%2Fkp88XqcAQrcynA%3D&Expires=1758876461 securityworker stdout | 2025-09-26 08:37:41,711 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:37:41,712 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,712 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,712 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,712 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,712 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:41,712 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:41,712 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:41,712 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:41,712 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:41,712 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:41,712 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,712 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,712 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:41,712 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:41,712 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876461 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:37:41,711 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:37:41,718 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EWXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE5qRXNJbVY0Y0NJNk1UYzFPRGczTmpRMk1Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFQTTFOa1JHWnllRWRtYUZKYU1qa2xNa0o1ZVhRMFYzbzVZbFpuTkNVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME5qRWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuYW0zRXprUE5jTF9lamsta0FoN0hwX05DOG9KNGVaR0k5blJrblRjTDdueHE3d2Q5Ujc5Q0p6TVRwNkpBaTE0Nk05OG9KejJXT28yTHZ1Y0QwUE5mMGctdDViYTFjbHM1bHpRaFdKY29YSWtWLTZMZ1p4Y0JaNmxaNXA1NEE0Rk9yRFZQSmc5Z3A2TDdMcmE0aWQwQ0hINDl1bFd6b05tM29YVVE4dFdvY0cwWGRkZmpxeFR3TmR6WFJFRmdsT2dsdG9mUlpoZFlsMlAteEQyUGpBVmk5TTlOQ0JUa0pvTkJoUXJjVnR3bkpfZXd0QUtuQ2pXcy12ZmxjaUgxMkRCRFNwSnFYT0FVeDVMOFFkcDVUcG1oM1hFS0RxczlXcWhXMDdGTnFaSkpPZ1F6NHRQTTVEUW4tQkY0Sy1MczVBME1kZjFWYnJuSXhZTFI4aF93QXBYdDFR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=O3SdDfrxGfhRZ29%2Byyt4Wz9bVg4%3D&Expires=1758876461 securityworker stdout | 2025-09-26 08:37:41,718 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:37:41,718 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,719 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 36]) securityworker stdout | 2025-09-26 08:37:41,719 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,719 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,719 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,719 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,719 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:41,719 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:41,719 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:41,719 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:41,719 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:41,719 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:41,719 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,719 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,719 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:41,719 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:41,719 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876461 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:37:41,725 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EWXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE5qRXNJbVY0Y0NJNk1UYzFPRGczTmpRMk1Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFQTTFOa1JHWnllRWRtYUZKYU1qa2xNa0o1ZVhRMFYzbzVZbFpuTkNVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME5qRWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuYW0zRXprUE5jTF9lamsta0FoN0hwX05DOG9KNGVaR0k5blJrblRjTDdueHE3d2Q5Ujc5Q0p6TVRwNkpBaTE0Nk05OG9KejJXT28yTHZ1Y0QwUE5mMGctdDViYTFjbHM1bHpRaFdKY29YSWtWLTZMZ1p4Y0JaNmxaNXA1NEE0Rk9yRFZQSmc5Z3A2TDdMcmE0aWQwQ0hINDl1bFd6b05tM29YVVE4dFdvY0cwWGRkZmpxeFR3TmR6WFJFRmdsT2dsdG9mUlpoZFlsMlAteEQyUGpBVmk5TTlOQ0JUa0pvTkJoUXJjVnR3bkpfZXd0QUtuQ2pXcy12ZmxjaUgxMkRCRFNwSnFYT0FVeDVMOFFkcDVUcG1oM1hFS0RxczlXcWhXMDdGTnFaSkpPZ1F6NHRQTTVEUW4tQkY0Sy1MczVBME1kZjFWYnJuSXhZTFI4aF93QXBYdDFR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=O3SdDfrxGfhRZ29%2Byyt4Wz9bVg4%3D&Expires=1758876461 securityworker stdout | 2025-09-26 08:37:41,726 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:37:41,726 [86] [DEBUG] [util.secscan.v4.api] POSTing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_report securityworker stderr | 2025-09-26 08:37:41 [86] [DEBUG] [util.migrate.allocator] Found 3 candidates, processing block start: 1 end: 36 by worker securityworker stdout | 2025-09-26 08:37:41,727 [86] [DEBUG] [util.migrate.allocator] Found 3 candidates, processing block start: 1 end: 36 by worker securityworker stdout | 2025-09-26 08:37:41,727 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [33, 1, 0]) securityworker stdout | 2025-09-26 08:37:41,729 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2', 1, 0]) securityworker stdout | 2025-09-26 08:37:41,731 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['f647cfe7-f327-443b-bf19-34bb0f088bc7']) securityworker stdout | 2025-09-26 08:37:41,732 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:37:41,733 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:37:41,733 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/2a/2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2'} securityworker stdout | 2025-09-26 08:37:41,733 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,733 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,733 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,733 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,733 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,733 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:41,733 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:41,733 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:41,733 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:41,733 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:41,733 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:41,734 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,734 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,734 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,734 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/2a/2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/2a/2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/2a/2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/2a/2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:37:41,734 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,734 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,734 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,734 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,734 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:37:41,734 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/2a/2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2 securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083741Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:37:41,734 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083741Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | 504d072d41f7e31717cae782301afe37e30c9c378c8704bbbc87c5f99d0f0ed8 securityworker stdout | 2025-09-26 08:37:41,734 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | bcd616ff87390a34d00fd86387e49d08f0ce911b00eca7d2854172d1191f30d7 securityworker stdout | 2025-09-26 08:37:41,734 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,734 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:37:41,734 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:37:41,756 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/2a/2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2 HTTP/1.1" 200 580 securityworker stdout | 2025-09-26 08:37:41,757 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9wq0-exulcq-qm4', 'x-amz-id-2': 'mg0l9wq0-exulcq-qm4', 'ETag': '"1d618db65765ad3e9325f8ce6eb88cb7-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:36 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '580', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:41 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:37:41,757 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:37:41,757 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,757 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:37:41,757 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,757 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9wq0-exulcq-qm4', 'HostId': 'mg0l9wq0-exulcq-qm4', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9wq0-exulcq-qm4', 'x-amz-id-2': 'mg0l9wq0-exulcq-qm4', 'etag': '"1d618db65765ad3e9325f8ce6eb88cb7-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:36 GMT', 'content-type': 'application/octet-stream', 'content-length': '580', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:41 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 36, tzinfo=tzutc()), 'ContentLength': 580, 'ETag': '"1d618db65765ad3e9325f8ce6eb88cb7-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } securityworker stdout | 2025-09-26 08:37:41,759 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."image_size", "t1"."uncompressed_size", "t1"."uploading", "t1"."cas_path", "t1"."content_checksum" FROM "imagestorage" AS "t1" WHERE ("t1"."content_checksum" = %s) LIMIT %s OFFSET %s', ['sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4', 1, 0]) securityworker stdout | 2025-09-26 08:37:41,760 [86] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL (SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1")', [3, 'sha256:5d29754ce036967079405405a04a54a7d3f8ba85e0057b6bdda3d03aa59c8361', 1, 3, 'sha256:2a3bbf8343185982373f19f348685f146d53ee36623a969a02c2a700376f38b2', 1]) securityworker stdout | 2025-09-26 08:37:41,762 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['03b02809-8f51-4afc-b064-91b2ba8583d2']) securityworker stdout | 2025-09-26 08:37:41,763 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['6d9afe7c-4cd4-46e0-8000-0876c9384bb4']) securityworker stdout | 2025-09-26 08:37:41,764 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s)', [33]) securityworker stdout | 2025-09-26 08:37:41,764 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:37:41,766 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) securityworker stdout | 2025-09-26 08:37:41,767 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Indexing manifest [33] 4/alpine@sha256:9e7331b8f4bbe798fca28aac7f6844896b436984b3412076e2890069b3ef397e securityworker stdout | 2025-09-26 08:37:41,767 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,767 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,767 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,767 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,767 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,767 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:41,767 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:41,767 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:41,767 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:41,767 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:41,768 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:41,768 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,768 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,768 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:41,768 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:41,768 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876461 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5d/5d29754ce036967079405405a04a54a7d3f8ba85e0057b6bdda3d03aa59c8361 securityworker stdout | 2025-09-26 08:37:41,774 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EWXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE5qRXNJbVY0Y0NJNk1UYzFPRGczTmpRMk1Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4MVpDODFaREk1TnpVMFkyVXdNelk1Tmpjd056azBNRFUwTURWaE1EUmhOVFJoTjJRelpqaGlZVGcxWlRBd05UZGlObUprWkdFelpEQXpZV0UxT1dNNE16WXhQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDA0V0VFbE1rWm5RVk5rUkVjM2JpVXlSbXR3T0RoWWNXTkJVWEpqZVc1QkpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qUTJNU0lzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5oUlpNcmcwVWlqeWRCX29TMlNNWVVsMFY3RzR0Z1d4bTM1aVlUSlRyYTBwSk9mZkRzNWVJXzluZXNUTzRyQ0dWY1hNU0FxVXhsd3FKenZESU1jaHpZVzJFaXF3dGVwNXJzcUQ3TDhNNlJ4dUJtNTRIQUZyQVo2bjdicmFZczNwa3czejlzNkgwdHJ5Y2JVOFFFWXVfZnlVYVVGZnJKQ1JoMlF2MEw3OS1xSWdjaGdUWU82V1NSMlFmRGg0VXZIWVE2Umd5Mm1GeUwtUHUyck1sZnpCZlI2UWFpU0lFckpSVUplT3pOZnluOV9neWdCem1ZLTZYd0xFNnJwalByaVBpcXUwX3JVdkxnVExBVTQ4R3JaQ0pfNExDWGlxbVdBUjZaMk1QV0FqcUJRd01wNzU2REVXQkxPaVVCTkJZdDRlV0doSjBRUnlDY0FSZDBjSGxpQjNvVkE=/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5d/5d29754ce036967079405405a04a54a7d3f8ba85e0057b6bdda3d03aa59c8361?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=8XA%2FgASdDG7n%2Fkp88XqcAQrcynA%3D&Expires=1758876461 securityworker stdout | 2025-09-26 08:37:41,774 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,774 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,774 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,774 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,774 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,774 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:41,774 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:41,774 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:41,774 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:41,774 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:41,774 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:41,774 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,774 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,774 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:41,774 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:41,774 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876461 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5d/5d29754ce036967079405405a04a54a7d3f8ba85e0057b6bdda3d03aa59c8361 securityworker stdout | 2025-09-26 08:37:41,780 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EWXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE5qRXNJbVY0Y0NJNk1UYzFPRGczTmpRMk1Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk4MVpDODFaREk1TnpVMFkyVXdNelk1Tmpjd056azBNRFUwTURWaE1EUmhOVFJoTjJRelpqaGlZVGcxWlRBd05UZGlObUprWkdFelpEQXpZV0UxT1dNNE16WXhQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDA0V0VFbE1rWm5RVk5rUkVjM2JpVXlSbXR3T0RoWWNXTkJVWEpqZVc1QkpUTkVKa1Y0Y0dseVpYTTlNVGMxT0RnM05qUTJNU0lzSW1odmMzUWlPaUp6TXk1dmNHVnVjMmhwWm5RdGMzUnZjbUZuWlM1emRtTXVZMngxYzNSbGNpNXNiMk5oYkRvME5ETWlMQ0p6WTJobGJXVWlPaUpvZEhSd2N5SjlYU3dpWTI5dWRHVjRkQ0k2ZTMxOS5oUlpNcmcwVWlqeWRCX29TMlNNWVVsMFY3RzR0Z1d4bTM1aVlUSlRyYTBwSk9mZkRzNWVJXzluZXNUTzRyQ0dWY1hNU0FxVXhsd3FKenZESU1jaHpZVzJFaXF3dGVwNXJzcUQ3TDhNNlJ4dUJtNTRIQUZyQVo2bjdicmFZczNwa3czejlzNkgwdHJ5Y2JVOFFFWXVfZnlVYVVGZnJKQ1JoMlF2MEw3OS1xSWdjaGdUWU82V1NSMlFmRGg0VXZIWVE2Umd5Mm1GeUwtUHUyck1sZnpCZlI2UWFpU0lFckpSVUplT3pOZnluOV9neWdCem1ZLTZYd0xFNnJwalByaVBpcXUwX3JVdkxnVExBVTQ4R3JaQ0pfNExDWGlxbVdBUjZaMk1QV0FqcUJRd01wNzU2REVXQkxPaVVCTkJZdDRlV0doSjBRUnlDY0FSZDBjSGxpQjNvVkE=/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/5d/5d29754ce036967079405405a04a54a7d3f8ba85e0057b6bdda3d03aa59c8361?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=8XA%2FgASdDG7n%2Fkp88XqcAQrcynA%3D&Expires=1758876461 securityworker stdout | 2025-09-26 08:37:41,780 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,780 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,780 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,780 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,780 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,780 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:41,780 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:41,780 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:41,780 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:41,780 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:41,780 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:41,781 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,781 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,781 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:41,781 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:41,781 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876461 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:37:41,786 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EWXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE5qRXNJbVY0Y0NJNk1UYzFPRGczTmpRMk1Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFQTTFOa1JHWnllRWRtYUZKYU1qa2xNa0o1ZVhRMFYzbzVZbFpuTkNVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME5qRWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuYW0zRXprUE5jTF9lamsta0FoN0hwX05DOG9KNGVaR0k5blJrblRjTDdueHE3d2Q5Ujc5Q0p6TVRwNkpBaTE0Nk05OG9KejJXT28yTHZ1Y0QwUE5mMGctdDViYTFjbHM1bHpRaFdKY29YSWtWLTZMZ1p4Y0JaNmxaNXA1NEE0Rk9yRFZQSmc5Z3A2TDdMcmE0aWQwQ0hINDl1bFd6b05tM29YVVE4dFdvY0cwWGRkZmpxeFR3TmR6WFJFRmdsT2dsdG9mUlpoZFlsMlAteEQyUGpBVmk5TTlOQ0JUa0pvTkJoUXJjVnR3bkpfZXd0QUtuQ2pXcy12ZmxjaUgxMkRCRFNwSnFYT0FVeDVMOFFkcDVUcG1oM1hFS0RxczlXcWhXMDdGTnFaSkpPZ1F6NHRQTTVEUW4tQkY0Sy1MczVBME1kZjFWYnJuSXhZTFI4aF93QXBYdDFR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=O3SdDfrxGfhRZ29%2Byyt4Wz9bVg4%3D&Expires=1758876461 securityworker stdout | 2025-09-26 08:37:41,786 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,786 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,786 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,786 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,786 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,786 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:41,786 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:41,786 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:41,786 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:41,786 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:41,786 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:41,786 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:41,786 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:41,786 [86] [DEBUG] [botocore.auth] Calculating signature using hmacv1 auth. securityworker stdout | 2025-09-26 08:37:41,786 [86] [DEBUG] [botocore.auth] HTTP request method: GET securityworker stdout | 2025-09-26 08:37:41,786 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | GET securityworker stdout | 1758876461 securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 securityworker stdout | 2025-09-26 08:37:41,792 [86] [DEBUG] [storage.downloadproxy] Proxying via URL https://quayregistry-quay-quay-enterprise-15475.apps.quaytest-15475.qe.devcluster.openshift.com/_storage_proxy/ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXRwWkNJNklrUlZjR2R5VTFKNWFtc3lVRWxPVlhVeVkxbFNUbFpQWkdkQ05sTmpjbUZ4YTNOV2RYVjZhMU15ZEZVaUxDSjBlWEFpT2lKS1YxUWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVYSmxaMmx6ZEhKNUxYRjFZWGt0Y1hWaGVTMWxiblJsY25CeWFYTmxMVEUxTkRjMUxtRndjSE11Y1hWaGVYUmxjM1F0TVRVME56VXVjV1V1WkdWMlkyeDFjM1JsY2k1dmNHVnVjMmhwWm5RdVkyOXRJaXdpYm1KbUlqb3hOelU0T0RjMU9EWXhMQ0pwWVhRaU9qRTNOVGc0TnpVNE5qRXNJbVY0Y0NJNk1UYzFPRGczTmpRMk1Td2ljM1ZpSWpvaWMzUnZjbUZuWlhCeWIzaDVJaXdpWVdOalpYTnpJanBiZXlKMGVYQmxJam9pYzNSdmNtRm5aWEJ5YjNoNUlpd2lkWEpwSWpvaWNYVmhlUzFrWVhSaGMzUnZjbVV0WlRJNVl6TTVPVFF0TmpKbFlpMDBaVGxtTFRrMU5UQXRZbUZoTVRGbU9EYzBNRGcwTDJSaGRHRnpkRzl5WVdkbEwzSmxaMmx6ZEhKNUwzTm9ZVEkxTmk5aE15OWhNMlZrT1RWallXVmlNREptWm1VMk9HTmtaRGxtWkRnME5EQTJOamd3WVdVNU0yUTJNek5qWWpFMk5ESXlaREF3WlRoaE4yTXlNamsxTldJME5tUTBQMEZYVTBGalkyVnpjMHRsZVVsa1BVdHhWVUZvZGpZd1FVZHNRVVJFY1RCTlkwdGFKbE5wWjI1aGRIVnlaVDFQTTFOa1JHWnllRWRtYUZKYU1qa2xNa0o1ZVhRMFYzbzVZbFpuTkNVelJDWkZlSEJwY21WelBURTNOVGc0TnpZME5qRWlMQ0pvYjNOMElqb2ljek11YjNCbGJuTm9hV1owTFhOMGIzSmhaMlV1YzNaakxtTnNkWE4wWlhJdWJHOWpZV3c2TkRReklpd2ljMk5vWlcxbElqb2lhSFIwY0hNaWZWMHNJbU52Ym5SbGVIUWlPbnQ5ZlEuYW0zRXprUE5jTF9lamsta0FoN0hwX05DOG9KNGVaR0k5blJrblRjTDdueHE3d2Q5Ujc5Q0p6TVRwNkpBaTE0Nk05OG9KejJXT28yTHZ1Y0QwUE5mMGctdDViYTFjbHM1bHpRaFdKY29YSWtWLTZMZ1p4Y0JaNmxaNXA1NEE0Rk9yRFZQSmc5Z3A2TDdMcmE0aWQwQ0hINDl1bFd6b05tM29YVVE4dFdvY0cwWGRkZmpxeFR3TmR6WFJFRmdsT2dsdG9mUlpoZFlsMlAteEQyUGpBVmk5TTlOQ0JUa0pvTkJoUXJjVnR3bkpfZXd0QUtuQ2pXcy12ZmxjaUgxMkRCRFNwSnFYT0FVeDVMOFFkcDVUcG1oM1hFS0RxczlXcWhXMDdGTnFaSkpPZ1F6NHRQTTVEUW4tQkY0Sy1MczVBME1kZjFWYnJuSXhZTFI4aF93QXBYdDFR/https/s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/a3/a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4?AWSAccessKeyId=KqUAhv60AGlADDq0McKZ&Signature=O3SdDfrxGfhRZ29%2Byyt4Wz9bVg4%3D&Expires=1758876461 securityworker stdout | 2025-09-26 08:37:41,792 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:37:41,792 [86] [DEBUG] [util.secscan.v4.api] POSTing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_report repositorygcworker stdout | 2025-09-26 08:37:42,045 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} proxycacheblobworker stdout | 2025-09-26 08:37:42,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:37:42,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:42.481458+00:00 (in 0.003580 seconds) proxycacheblobworker stdout | 2025-09-26 08:37:42,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:52 GMT)" (scheduled at 2025-09-26 08:37:42.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:37:42,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:37:42,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 37, 42, 478657), True, datetime.datetime(2025, 9, 26, 8, 37, 42, 478657), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:37:42,481 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:37:42,481 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:52.477454+00:00 (in 9.995618 seconds) proxycacheblobworker stdout | 2025-09-26 08:37:42,482 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:42:42 GMT)" (scheduled at 2025-09-26 08:37:42.481458+00:00) proxycacheblobworker stdout | 2025-09-26 08:37:42,482 [69] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [False, datetime.datetime(2025, 9, 26, 8, 37, 42, 482154), 'proxycacheblob/%']) proxycacheblobworker stdout | 2025-09-26 08:37:42,498 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:37:42,499 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:37:42,499 [69] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 37, 42, 482154), True, datetime.datetime(2025, 9, 26, 8, 37, 42, 482154), 0, 'proxycacheblob/%']) proxycacheblobworker stdout | 2025-09-26 08:37:42,499 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:37:52 GMT)" executed successfully proxycacheblobworker stdout | 2025-09-26 08:37:42,500 [69] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) AND NOT ("t1"."queue_name" IN (SELECT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s)))))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 37, 42, 482154), True, datetime.datetime(2025, 9, 26, 8, 37, 42, 482154), 0, 'proxycacheblob/%', False, datetime.datetime(2025, 9, 26, 8, 37, 42, 482154), 'proxycacheblob/%']) proxycacheblobworker stdout | 2025-09-26 08:37:42,501 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:37:42,501 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:42:42 GMT)" executed successfully servicekey stdout | 2025-09-26 08:37:42,659 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:37:42,732 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} securityworker stdout | 2025-09-26 08:37:43,031 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "POST /indexer/api/v1/index_report HTTP/1.1" 201 None securityworker stdout | 2025-09-26 08:37:43,035 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [33, 1, 0]) securityworker stdout | 2025-09-26 08:37:43,036 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name", "t1"."repository_id", "t1"."manifest_id", "t1"."lifetime_start_ms", "t1"."lifetime_end_ms", "t1"."immutable", "t1"."hidden", "t1"."reversion", "t1"."tag_kind_id", "t1"."linked_tag_id" FROM "tag" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [33, 1, 0]) securityworker stdout | 2025-09-26 08:37:43,037 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:37:43,037 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/matcher/api/v1/vulnerability_report/sha256:9e7331b8f4bbe798fca28aac7f6844896b436984b3412076e2890069b3ef397e securityworker stdout | 2025-09-26 08:37:43,066 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /matcher/api/v1/vulnerability_report/sha256:9e7331b8f4bbe798fca28aac7f6844896b436984b3412076e2890069b3ef397e HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:37:43,070 [86] [DEBUG] [data.secscan_model.secscan_v4_model] Attempting to create notifications for manifest #33 securityworker stdout | 2025-09-26 08:37:43,070 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE ("manifestsecuritystatus"."manifest_id" = %s)', [33]) securityworker stdout | 2025-09-26 08:37:43,071 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [33, 3, 2, '""', datetime.datetime(2025, 9, 26, 8, 37, 43, 71382), '37b46b4a70b6f1a19d5e4e18d21f57ff', 4, '{}']) securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Marking id range as completed: 33-34 by worker securityworker stdout | 2025-09-26 08:37:43,073 [86] [DEBUG] [util.migrate.allocator] Marking id range as completed: 33-34 by worker securityworker stdout | 2025-09-26 08:37:43,073 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 33-34 securityworker stdout | 2025-09-26 08:37:43,073 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 33 securityworker stdout | 2025-09-26 08:37:43,073 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 34 securityworker stdout | 2025-09-26 08:37:43,073 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:43,073 [86] [DEBUG] [util.migrate.allocator] Total range: 34-33 securityworker stdout | 2025-09-26 08:37:43,073 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:37:43,073 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 33-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 33 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total range: 34-33 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:43,074 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:43,074 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-34 securityworker stdout | 2025-09-26 08:37:43,074 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 30 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 30 securityworker stdout | 2025-09-26 08:37:43,075 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 32, 37, 687906), 21, 25]) securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 21-25 by worker securityworker stdout | 2025-09-26 08:37:43,075 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 21-25 by worker securityworker stdout | 2025-09-26 08:37:43,076 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 21-25 securityworker stdout | 2025-09-26 08:37:43,076 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 21-25 securityworker stdout | 2025-09-26 08:37:43,076 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:37:43,076 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stdout | 2025-09-26 08:37:43,076 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stdout | 2025-09-26 08:37:43,076 [86] [DEBUG] [util.migrate.allocator] Left range 21-25 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 21-25 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 21-25 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Left range 21-25 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 25-34 securityworker stdout | 2025-09-26 08:37:43,076 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 25-34 securityworker stdout | 2025-09-26 08:37:43,076 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 30 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 30 securityworker stdout | 2025-09-26 08:37:43,077 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 32, 37, 687906), 27, 31]) securityworker stdout | 2025-09-26 08:37:43,078 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 27-31 by worker securityworker stdout | 2025-09-26 08:37:43,079 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 27-31 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 27-31 by worker securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 27-31 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 27-31 securityworker stdout | 2025-09-26 08:37:43,079 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 27-31 securityworker stdout | 2025-09-26 08:37:43,079 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stdout | 2025-09-26 08:37:43,079 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stdout | 2025-09-26 08:37:43,079 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 3 total holes securityworker stdout | 2025-09-26 08:37:43,079 [86] [DEBUG] [util.migrate.allocator] Left range 21-25 securityworker stdout | 2025-09-26 08:37:43,079 [86] [DEBUG] [util.migrate.allocator] Right range 27-31 securityworker stdout | 2025-09-26 08:37:43,079 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 25-27 securityworker stdout | 2025-09-26 08:37:43,079 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 25 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 3 total holes securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Left range 21-25 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Right range 27-31 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 25-27 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 25 securityworker stdout | 2025-09-26 08:37:43,080 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 32, 37, 687906), 25, 29]) securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 25-29 by worker securityworker stdout | 2025-09-26 08:37:43,081 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 25-29 by worker securityworker stdout | 2025-09-26 08:37:43,081 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 25-29 securityworker stdout | 2025-09-26 08:37:43,081 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 21-25 securityworker stdout | 2025-09-26 08:37:43,081 [86] [DEBUG] [util.migrate.allocator] Already merged with block 21-25 securityworker stdout | 2025-09-26 08:37:43,081 [86] [DEBUG] [util.migrate.allocator] Merging with block 27-31 securityworker stdout | 2025-09-26 08:37:43,081 [86] [DEBUG] [util.migrate.allocator] Discarding 2 obsolete blocks securityworker stdout | 2025-09-26 08:37:43,081 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 21-31 securityworker stdout | 2025-09-26 08:37:43,081 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 25-29 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 21-25 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Already merged with block 21-25 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Merging with block 27-31 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Discarding 2 obsolete blocks securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 21-31 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:37:43,081 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stdout | 2025-09-26 08:37:43,082 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stdout | 2025-09-26 08:37:43,082 [86] [DEBUG] [util.migrate.allocator] Left range 21-31 securityworker stdout | 2025-09-26 08:37:43,082 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 31-34 securityworker stdout | 2025-09-26 08:37:43,082 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 31 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Left range 21-31 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 31-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 31 securityworker stdout | 2025-09-26 08:37:43,082 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 32, 37, 687906), 31, 34]) securityworker stdout | 2025-09-26 08:37:43,083 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 31-34 by worker securityworker stdout | 2025-09-26 08:37:43,083 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 31-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 31-34 by worker securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 31-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 21-31 securityworker stdout | 2025-09-26 08:37:43,083 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 21-31 securityworker stdout | 2025-09-26 08:37:43,083 [86] [DEBUG] [util.migrate.allocator] Already merged with block 21-31 securityworker stdout | 2025-09-26 08:37:43,083 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 21 securityworker stdout | 2025-09-26 08:37:43,083 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:37:43,084 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:43,084 [86] [DEBUG] [util.migrate.allocator] Total range: 19-21 securityworker stdout | 2025-09-26 08:37:43,084 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:43,084 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-21 securityworker stdout | 2025-09-26 08:37:43,084 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 19 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Already merged with block 21-31 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 21 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total range: 19-21 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-21 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 19 securityworker stdout | 2025-09-26 08:37:43,084 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 32, 37, 687906), 19, 23]) securityworker stdout | 2025-09-26 08:37:43,085 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 19-23 by worker securityworker stdout | 2025-09-26 08:37:43,085 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 19-23 securityworker stdout | 2025-09-26 08:37:43,085 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 19 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 19-23 by worker securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 19-23 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 19 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 23 securityworker stdout | 2025-09-26 08:37:43,085 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 23 securityworker stdout | 2025-09-26 08:37:43,085 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:43,085 [86] [DEBUG] [util.migrate.allocator] Total range: 23-19 securityworker stdout | 2025-09-26 08:37:43,085 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:37:43,085 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stdout | 2025-09-26 08:37:43,085 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:43,085 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total range: 23-19 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 30 securityworker stdout | 2025-09-26 08:37:43,085 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 30 securityworker stdout | 2025-09-26 08:37:43,086 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 32, 37, 687906), 29, 33]) securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 29-33 by worker securityworker stdout | 2025-09-26 08:37:43,087 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 29-33 by worker securityworker stdout | 2025-09-26 08:37:43,087 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 29-33 securityworker stdout | 2025-09-26 08:37:43,087 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 29-33 securityworker stdout | 2025-09-26 08:37:43,088 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:37:43,088 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stdout | 2025-09-26 08:37:43,088 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 29-33 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 29-33 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:37:43,088 [86] [DEBUG] [util.migrate.allocator] Right range 29-33 securityworker stdout | 2025-09-26 08:37:43,088 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-29 securityworker stdout | 2025-09-26 08:37:43,088 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 25 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Right range 29-33 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-29 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 25 securityworker stdout | 2025-09-26 08:37:43,088 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 32, 37, 687906), 25, 29]) securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 25-29 by worker securityworker stdout | 2025-09-26 08:37:43,089 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 25-29 by worker securityworker stdout | 2025-09-26 08:37:43,089 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 25-29 securityworker stdout | 2025-09-26 08:37:43,089 [86] [DEBUG] [util.migrate.allocator] Merging with block 29-33 securityworker stdout | 2025-09-26 08:37:43,089 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:37:43,089 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 25-33 securityworker stdout | 2025-09-26 08:37:43,089 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 25-29 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Merging with block 29-33 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 25-33 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stdout | 2025-09-26 08:37:43,089 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stdout | 2025-09-26 08:37:43,089 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:37:43,089 [86] [DEBUG] [util.migrate.allocator] Right range 25-33 securityworker stdout | 2025-09-26 08:37:43,089 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-25 securityworker stdout | 2025-09-26 08:37:43,089 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 21 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Right range 25-33 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-25 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 21 securityworker stdout | 2025-09-26 08:37:43,090 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 32, 37, 687906), 20, 24]) securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 20-24 by worker securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 20-24 securityworker stdout | 2025-09-26 08:37:43,091 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 20-24 by worker securityworker stdout | 2025-09-26 08:37:43,091 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 20-24 securityworker stdout | 2025-09-26 08:37:43,091 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 20-24 securityworker stdout | 2025-09-26 08:37:43,091 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stdout | 2025-09-26 08:37:43,091 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stdout | 2025-09-26 08:37:43,091 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 3 total holes securityworker stdout | 2025-09-26 08:37:43,091 [86] [DEBUG] [util.migrate.allocator] Left range 20-24 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 20-24 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 3 total holes securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Left range 20-24 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Right range 25-33 securityworker stdout | 2025-09-26 08:37:43,091 [86] [DEBUG] [util.migrate.allocator] Right range 25-33 securityworker stdout | 2025-09-26 08:37:43,091 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 24-25 securityworker stdout | 2025-09-26 08:37:43,091 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 24 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 24-25 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 24 securityworker stdout | 2025-09-26 08:37:43,092 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 32, 37, 687906), 24, 28]) securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 24-28 by worker securityworker stdout | 2025-09-26 08:37:43,092 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 24-28 by worker securityworker stdout | 2025-09-26 08:37:43,092 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 24-28 securityworker stdout | 2025-09-26 08:37:43,092 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 20-24 securityworker stdout | 2025-09-26 08:37:43,092 [86] [DEBUG] [util.migrate.allocator] Already merged with block 20-24 securityworker stdout | 2025-09-26 08:37:43,092 [86] [DEBUG] [util.migrate.allocator] Merging with block 25-33 securityworker stdout | 2025-09-26 08:37:43,093 [86] [DEBUG] [util.migrate.allocator] Discarding 2 obsolete blocks securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 24-28 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 20-24 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Already merged with block 20-24 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Merging with block 25-33 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Discarding 2 obsolete blocks securityworker stdout | 2025-09-26 08:37:43,093 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 20-33 securityworker stdout | 2025-09-26 08:37:43,093 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:37:43,093 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stdout | 2025-09-26 08:37:43,093 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:37:43,093 [86] [DEBUG] [util.migrate.allocator] Right range 20-33 securityworker stdout | 2025-09-26 08:37:43,093 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-20 securityworker stdout | 2025-09-26 08:37:43,093 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 19 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 20-33 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total range: 19-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Right range 20-33 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-20 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 19 securityworker stdout | 2025-09-26 08:37:43,093 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 32, 37, 687906), 19, 23]) securityworker stdout | 2025-09-26 08:37:43,094 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 19-23 by worker securityworker stdout | 2025-09-26 08:37:43,094 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 19-23 securityworker stdout | 2025-09-26 08:37:43,094 [86] [DEBUG] [util.migrate.allocator] Merging with block 20-33 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 19-23 by worker securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 19-23 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Merging with block 20-33 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 33 securityworker stdout | 2025-09-26 08:37:43,094 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 33 securityworker stdout | 2025-09-26 08:37:43,094 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:37:43,094 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:43,094 [86] [DEBUG] [util.migrate.allocator] Total range: 33-34 securityworker stdout | 2025-09-26 08:37:43,094 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:43,094 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 33-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total range: 33-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 33-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 33 securityworker stdout | 2025-09-26 08:37:43,094 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 33 securityworker stdout | 2025-09-26 08:37:43,095 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 32, 37, 687906), 33, 34]) securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 33-34 by worker securityworker stdout | 2025-09-26 08:37:43,096 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 33-34 by worker securityworker stdout | 2025-09-26 08:37:43,096 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 33-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 33-34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 33 securityworker stdout | 2025-09-26 08:37:43,096 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 33 securityworker stdout | 2025-09-26 08:37:43,096 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 34 securityworker stdout | 2025-09-26 08:37:43,097 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:43,097 [86] [DEBUG] [util.migrate.allocator] Total range: 34-33 securityworker stdout | 2025-09-26 08:37:43,097 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 34 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total range: 34-33 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:37:43,097 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:37:43,097 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:07 GMT)" executed successfully securityworker stdout | 2025-09-26 08:37:43,408 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "POST /indexer/api/v1/index_report HTTP/1.1" 201 None securityworker stdout | 2025-09-26 08:37:43,412 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."manifest_id", "t1"."repository_id", "t1"."index_status", "t1"."error_json", "t1"."last_indexed", "t1"."indexer_hash", "t1"."indexer_version", "t1"."metadata_json" FROM "manifestsecuritystatus" AS "t1" WHERE ("t1"."manifest_id" = %s) LIMIT %s OFFSET %s', [33, 1, 0]) securityworker stdout | 2025-09-26 08:37:43,413 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE ("manifestsecuritystatus"."manifest_id" = %s)', [33]) securityworker stdout | 2025-09-26 08:37:43,414 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [33, 3, 2, '""', datetime.datetime(2025, 9, 26, 8, 37, 43, 413890), '37b46b4a70b6f1a19d5e4e18d21f57ff', 4, '{}']) securityworker stdout | 2025-09-26 08:37:43,416 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [34, 1, 0]) securityworker stdout | 2025-09-26 08:37:43,418 [86] [DEBUG] [peewee] ('SELECT "t1"."uuid" FROM "imagestorage" AS "t1" INNER JOIN "uploadedblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s OFFSET %s', [3, 'sha256:3153bed47c27c01ddc927f6f3c175e3eca5cc84d267fe30eec15a0872eabe70c', 1, 0]) securityworker stdout | 2025-09-26 08:37:43,419 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."storage_id", "t1"."location_id", "t2"."id", "t2"."uuid", "t2"."image_size", "t2"."uncompressed_size", "t2"."uploading", "t2"."cas_path", "t2"."content_checksum" FROM "imagestorageplacement" AS "t1" INNER JOIN "imagestorage" AS "t2" ON ("t1"."storage_id" = "t2"."id") WHERE ("t2"."uuid" = %s)', ['37f91066-f5b2-4e81-92b5-371c0ef960d9']) securityworker stdout | 2025-09-26 08:37:43,420 [86] [DEBUG] [boto3.resources.factory] Loading s3:Object securityworker stdout | 2025-09-26 08:37:43,421 [86] [DEBUG] [botocore.hooks] Event creating-resource-class.s3.Object: calling handler ._handler at 0x7f2ab65d3ec0> securityworker stdout | 2025-09-26 08:37:43,422 [86] [DEBUG] [boto3.resources.action] Calling s3:get_object with {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/31/3153bed47c27c01ddc927f6f3c175e3eca5cc84d267fe30eec15a0872eabe70c'} securityworker stdout | 2025-09-26 08:37:43,422 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:43,422 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:43,422 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:43,422 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:43,422 [86] [DEBUG] [botocore.hooks] Event before-parameter-build.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:43,422 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler securityworker stdout | 2025-09-26 08:37:43,422 [86] [DEBUG] [botocore.hooks] Event before-endpoint-resolution.s3: calling handler > securityworker stdout | 2025-09-26 08:37:43,422 [86] [DEBUG] [botocore.regions] Calling endpoint provider with parameters: {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://s3.openshift-storage.svc.cluster.local:443', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} securityworker stdout | 2025-09-26 08:37:43,422 [86] [DEBUG] [botocore.regions] Endpoint provider result: https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084 securityworker stdout | 2025-09-26 08:37:43,422 [86] [DEBUG] [botocore.regions] Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" securityworker stdout | 2025-09-26 08:37:43,422 [86] [DEBUG] [botocore.regions] Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} securityworker stdout | 2025-09-26 08:37:43,422 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:43,422 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:43,422 [86] [DEBUG] [botocore.hooks] Event before-call.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:43,422 [86] [DEBUG] [botocore.endpoint] Making request for OperationModel(name=GetObject) with params: {'url_path': '/datastorage/registry/sha256/31/3153bed47c27c01ddc927f6f3c175e3eca5cc84d267fe30eec15a0872eabe70c', 'query_string': {}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.28.61 md/Botocore#1.31.61 ua/2.0 os/linux#5.14.0-570.48.1.el9_6.x86_64 md/arch#x86_64 lang/python#3.12.11 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.31.61 Resource'}, 'body': b'', 'auth_path': '/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3153bed47c27c01ddc927f6f3c175e3eca5cc84d267fe30eec15a0872eabe70c', 'url': 'https://s3.openshift-storage.svc.cluster.local:443/quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3153bed47c27c01ddc927f6f3c175e3eca5cc84d267fe30eec15a0872eabe70c', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'params': {'Bucket': 'quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084', 'Key': 'datastorage/registry/sha256/31/3153bed47c27c01ddc927f6f3c175e3eca5cc84d267fe30eec15a0872eabe70c'}}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}}} securityworker stdout | 2025-09-26 08:37:43,422 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:43,422 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:43,422 [86] [DEBUG] [botocore.hooks] Event choose-signer.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:43,422 [86] [DEBUG] [botocore.hooks] Event before-sign.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:43,423 [86] [DEBUG] [botocore.auth] Calculating signature using v4 auth. securityworker stdout | 2025-09-26 08:37:43,423 [86] [DEBUG] [botocore.auth] CanonicalRequest: securityworker stdout | GET securityworker stdout | /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3153bed47c27c01ddc927f6f3c175e3eca5cc84d267fe30eec15a0872eabe70c securityworker stdout | host:s3.openshift-storage.svc.cluster.local securityworker stdout | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | x-amz-date:20250926T083743Z securityworker stdout | host;x-amz-content-sha256;x-amz-date securityworker stdout | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 securityworker stdout | 2025-09-26 08:37:43,423 [86] [DEBUG] [botocore.auth] StringToSign: securityworker stdout | AWS4-HMAC-SHA256 securityworker stdout | 20250926T083743Z securityworker stdout | 20250926/us-east-1/s3/aws4_request securityworker stdout | a40524a0d03b4eeb2d789d303f5eecb92c63906aba49e385da263d192e0017fb securityworker stdout | 2025-09-26 08:37:43,423 [86] [DEBUG] [botocore.auth] Signature: securityworker stdout | ca3da82569bf32a20e4eba3a775237ba515cf2da942c69b5af3422aed85bce7a securityworker stdout | 2025-09-26 08:37:43,423 [86] [DEBUG] [botocore.hooks] Event request-created.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:43,423 [86] [DEBUG] [botocore.endpoint] Sending http request: securityworker stdout | 2025-09-26 08:37:43,423 [86] [DEBUG] [botocore.httpsession] Certificate path: /app/lib/python3.12/site-packages/certifi/cacert.pem securityworker stdout | 2025-09-26 08:37:43,442 [86] [DEBUG] [urllib3.connectionpool] https://s3.openshift-storage.svc.cluster.local:443 "GET /quay-datastore-e29c3994-62eb-4e9f-9550-baa11f874084/datastorage/registry/sha256/31/3153bed47c27c01ddc927f6f3c175e3eca5cc84d267fe30eec15a0872eabe70c HTTP/1.1" 200 241 securityworker stdout | 2025-09-26 08:37:43,442 [86] [DEBUG] [botocore.parsers] Response headers: {'Server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9y0w-9sewre-fys', 'x-amz-id-2': 'mg0l9y0w-9sewre-fys', 'ETag': '"63472c4a7b658d4fbe924d527c3ee8f8-1"', 'Last-Modified': 'Fri, 26 Sep 2025 08:37:37 GMT', 'Content-Type': 'application/octet-stream', 'Content-Length': '241', 'Accept-Ranges': 'bytes', 'Date': 'Fri, 26 Sep 2025 08:37:43 GMT', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=5'} securityworker stdout | 2025-09-26 08:37:43,442 [86] [DEBUG] [botocore.parsers] Response body: securityworker stdout | securityworker stdout | 2025-09-26 08:37:43,442 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler securityworker stdout | 2025-09-26 08:37:43,442 [86] [DEBUG] [botocore.retryhandler] No retry needed. securityworker stdout | 2025-09-26 08:37:43,442 [86] [DEBUG] [botocore.hooks] Event needs-retry.s3.GetObject: calling handler > securityworker stdout | 2025-09-26 08:37:43,442 [86] [DEBUG] [boto3.resources.action] Response: {'ResponseMetadata': {'RequestId': 'mg0l9y0w-9sewre-fys', 'HostId': 'mg0l9y0w-9sewre-fys', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'NooBaa/5.19.4-3154414', 'x-amz-request-id': 'mg0l9y0w-9sewre-fys', 'x-amz-id-2': 'mg0l9y0w-9sewre-fys', 'etag': '"63472c4a7b658d4fbe924d527c3ee8f8-1"', 'last-modified': 'Fri, 26 Sep 2025 08:37:37 GMT', 'content-type': 'application/octet-stream', 'content-length': '241', 'accept-ranges': 'bytes', 'date': 'Fri, 26 Sep 2025 08:37:43 GMT', 'connection': 'keep-alive', 'keep-alive': 'timeout=5'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 9, 26, 8, 37, 37, tzinfo=tzutc()), 'ContentLength': 241, 'ETag': '"63472c4a7b658d4fbe924d527c3ee8f8-1"', 'ContentType': 'application/octet-stream', 'Metadata': {}, 'Body': } securityworker stdout | 2025-09-26 08:37:43,445 [86] [DEBUG] [peewee] ('(SELECT * FROM (SELECT "t1"."id", "t1"."content_checksum", "t1"."image_size", "t1"."uuid", "t1"."cas_path", "t1"."uncompressed_size" FROM "imagestorage" AS "t1" INNER JOIN "manifestblob" AS "t2" ON ("t2"."blob_id" = "t1"."id") WHERE (("t2"."repository_id" = %s) AND ("t1"."content_checksum" = %s)) LIMIT %s) AS "q0") UNION ALL ((SELECT * FROM (SELECT "t3"."id", "t3"."content_checksum", "t3"."image_size", "t3"."uuid", "t3"."cas_path", "t3"."uncompressed_size" FROM "imagestorage" AS "t3" INNER JOIN "manifestblob" AS "t4" ON ("t4"."blob_id" = "t3"."id") WHERE (("t4"."repository_id" = %s) AND ("t3"."content_checksum" = %s)) LIMIT %s) AS "q1") UNION ALL (SELECT * FROM (SELECT "t5"."id", "t5"."content_checksum", "t5"."image_size", "t5"."uuid", "t5"."cas_path", "t5"."uncompressed_size" FROM "imagestorage" AS "t5" INNER JOIN "manifestblob" AS "t6" ON ("t6"."blob_id" = "t5"."id") WHERE (("t6"."repository_id" = %s) AND ("t5"."content_checksum" = %s)) LIMIT %s) AS "q2"))', [3, 'sha256:8d1f02ad9f9ee20970462cba215b76ecee5bc8c7c6dbfb1316d14eefcbf30edb', 1, 3, 'sha256:3153bed47c27c01ddc927f6f3c175e3eca5cc84d267fe30eec15a0872eabe70c', 1, 3, 'sha256:1bb83e137f5d9afa564a05f5b414eaa28703aeb626da0672e858e21083f7e2d8', 1]) securityworker stdout | 2025-09-26 08:37:43,447 [86] [ERROR] [data.registry_model.registry_oci_model] Could not list manifest layers `34` securityworker stdout | Traceback (most recent call last): securityworker stdout | File "/quay-registry/data/registry_model/registry_oci_model.py", line 666, in list_manifest_layers securityworker stdout | layers = self._list_manifest_layers( securityworker stdout | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ securityworker stdout | File "/quay-registry/data/registry_model/registry_oci_model.py", line 1263, in _list_manifest_layers securityworker stdout | for layer in layers: securityworker stdout | ^^^^^^ securityworker stdout | File "/quay-registry/image/oci/manifest.py", line 308, in get_layers securityworker stdout | command=image_layer.history.command, securityworker stdout | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ securityworker stdout | AttributeError: 'NoneType' object has no attribute 'command' securityworker stdout | 2025-09-26 08:37:43,448 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_user_id", "t1"."name", "t1"."visibility_id", "t1"."description", "t1"."badge_token", "t1"."kind_id", "t1"."trust_enabled", "t1"."state" FROM "repository" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [3, 1, 0]) securityworker stdout | 2025-09-26 08:37:43,449 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."username", "t1"."password_hash", "t1"."email", "t1"."verified", "t1"."stripe_id", "t1"."organization", "t1"."robot", "t1"."invoice_email", "t1"."invalid_login_attempts", "t1"."last_invalid_login", "t1"."removed_tag_expiration_s", "t1"."enabled", "t1"."invoice_email_address", "t1"."given_name", "t1"."family_name", "t1"."company", "t1"."location", "t1"."maximum_queued_builds_count", "t1"."creation_date", "t1"."last_accessed" FROM "user" AS "t1" WHERE ("t1"."id" = %s) LIMIT %s OFFSET %s', [4, 1, 0]) securityworker stdout | 2025-09-26 08:37:43,449 [86] [WARNING] [data.secscan_model.secscan_v4_model] Cannot index 4/alpine@sha256:0df49d0e46a24f094d82b5fe5cb961d1c413640031745d802a4e82d50d8a50bb due to manifest being invalid (manifest has no layers) securityworker stdout | 2025-09-26 08:37:43,450 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE (("manifestsecuritystatus"."manifest_id" = %s) AND ("manifestsecuritystatus"."repository_id" = %s))', [34, 3]) securityworker stdout | 2025-09-26 08:37:43,450 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [34, 3, -2, '{}', datetime.datetime(2025, 9, 26, 8, 37, 43, 450327), 'none', 4, '{}']) securityworker stdout | 2025-09-26 08:37:43,452 [86] [DEBUG] [peewee] ('DELETE FROM "manifestsecuritystatus" WHERE (("manifestsecuritystatus"."manifest_id" = %s) AND ("manifestsecuritystatus"."repository_id" = %s))', [35, 3]) securityworker stdout | 2025-09-26 08:37:43,453 [86] [DEBUG] [peewee] ('INSERT INTO "manifestsecuritystatus" ("manifest_id", "repository_id", "index_status", "error_json", "last_indexed", "indexer_hash", "indexer_version", "metadata_json") VALUES (%s, %s, %s, %s, %s, %s, %s, %s) RETURNING "manifestsecuritystatus"."id"', [35, 3, -2, '{}', datetime.datetime(2025, 9, 26, 8, 37, 43, 453080), 'none', 4, '{}']) securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Marking id range as completed: 1-36 by worker securityworker stdout | 2025-09-26 08:37:43,454 [86] [DEBUG] [util.migrate.allocator] Marking id range as completed: 1-36 by worker securityworker stdout | 2025-09-26 08:37:43,454 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:37:43,455 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:37:43,455 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:37:43,455 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:43,455 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:37:43,455 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:37:43,455 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:37:43,455 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:43,455 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:37:43,455 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:37:43,456 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 32, 41, 691573), 1, 36]) securityworker stdout | 2025-09-26 08:37:43,456 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:37:43,456 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:37:43,456 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:37:43,456 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:37:43,456 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:43,456 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:37:43,457 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:37:43,457 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:37:43,457 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:37:43,457 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:37:43,457 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:37:43,457 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 32, 41, 691573), 1, 36]) securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:37:43,458 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:37:43,458 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:37:43,458 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:37:43,459 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:37:43,459 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:37:43,459 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:37:43,459 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:37:43,459 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:37:43 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:37:43,459 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:11 GMT)" executed successfully gunicorn-registry stdout | 2025-09-26 08:37:44,207 [257] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '257'} gunicorn-registry stdout | 2025-09-26 08:37:44,211 [253] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '253'} gunicorn-registry stdout | 2025-09-26 08:37:44,218 [59] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '59'} gunicorn-registry stdout | 2025-09-26 08:37:44,222 [255] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '255'} gunicorn-registry stdout | 2025-09-26 08:37:44,226 [256] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '256'} gunicorn-registry stdout | 2025-09-26 08:37:44,237 [258] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '258'} gunicorn-registry stdout | 2025-09-26 08:37:44,242 [252] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '252'} gunicorn-registry stdout | 2025-09-26 08:37:44,274 [251] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '251'} gunicorn-registry stdout | 2025-09-26 08:37:44,277 [254] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '254'} buildlogsarchiver stdout | 2025-09-26 08:37:45,564 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} buildlogsarchiver stdout | 2025-09-26 08:37:47,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:37:47,375 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:17.375102+00:00 (in 29.999525 seconds) buildlogsarchiver stdout | 2025-09-26 08:37:47,375 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:17 GMT)" (scheduled at 2025-09-26 08:37:47.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:37:47,376 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 37, 47, 375891), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:37:47,383 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:37:47,383 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:37:47,383 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:17 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:37:48,199 [247] [DEBUG] [app] Starting request: urn:request:79f6f5cd-ec70-484a-b85e-b633409dfdaf (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:37:48,200 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:37:48,202 [251] [DEBUG] [app] Starting request: urn:request:980199a5-11f0-436e-988c-05cd28267852 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:37:48,202 [251] [DEBUG] [app] Ending request: urn:request:980199a5-11f0-436e-988c-05cd28267852 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:980199a5-11f0-436e-988c-05cd28267852', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:37:48,203 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:37:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:37:48,203 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:37:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:37:48,204 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:37:48,208 [250] [DEBUG] [app] Starting request: urn:request:89b87511-8f37-42ec-a1af-b792216e99af (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:37:48,209 [250] [DEBUG] [app] Ending request: urn:request:89b87511-8f37-42ec-a1af-b792216e99af (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:89b87511-8f37-42ec-a1af-b792216e99af', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:37:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.002) gunicorn-web stdout | 2025-09-26 08:37:48,209 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:37:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:37:48,210 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:37:48,210 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:37:48,210 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:37:48,210 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:37:48,214 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:37:48,214 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:37:48,219 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:37:48,220 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:37:48,220 [247] [DEBUG] [app] Ending request: urn:request:79f6f5cd-ec70-484a-b85e-b633409dfdaf (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:79f6f5cd-ec70-484a-b85e-b633409dfdaf', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:37:48,220 [247] [DEBUG] [data.database] Disconnecting from database. nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:37:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.023 118 0.023) gunicorn-web stdout | 2025-09-26 08:37:48,221 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:37:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" gunicorn-web stdout | 2025-09-26 08:37:48,261 [247] [DEBUG] [app] Starting request: urn:request:2e9e50c9-b1b3-4050-9732-d6056cce3ee6 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:37:48,263 [251] [DEBUG] [app] Starting request: urn:request:6d5a48ae-2036-4eb3-98ce-c5e3ccd3d3fb (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:37:48,263 [251] [DEBUG] [app] Ending request: urn:request:6d5a48ae-2036-4eb3-98ce-c5e3ccd3d3fb (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:6d5a48ae-2036-4eb3-98ce-c5e3ccd3d3fb', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:37:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.001) gunicorn-registry stdout | 2025-09-26 08:37:48,264 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:37:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:37:48,264 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:37:48,264 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:37:48,266 [250] [DEBUG] [app] Starting request: urn:request:1861e7cb-10b6-41ce-b066-c06cc699f56b (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:37:48,266 [250] [DEBUG] [app] Ending request: urn:request:1861e7cb-10b6-41ce-b066-c06cc699f56b (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:1861e7cb-10b6-41ce-b066-c06cc699f56b', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:37:48,267 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:37:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:37:48,267 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:37:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:37:48,267 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:37:48,267 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:37:48,267 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:37:48,271 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:37:48,271 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:37:48,275 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:37:48,276 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:37:48,277 [247] [DEBUG] [app] Ending request: urn:request:2e9e50c9-b1b3-4050-9732-d6056cce3ee6 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:2e9e50c9-b1b3-4050-9732-d6056cce3ee6', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:37:48,277 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:37:48,277 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:37:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:37:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.016 118 0.016) securityworker stdout | 2025-09-26 08:37:48,767 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} notificationworker stdout | 2025-09-26 08:37:50,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:37:50,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:00.692901+00:00 (in 9.999082 seconds) notificationworker stdout | 2025-09-26 08:37:50,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:00 GMT)" (scheduled at 2025-09-26 08:37:50.692901+00:00) notificationworker stdout | 2025-09-26 08:37:50,694 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:37:50,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 37, 50, 694156), True, datetime.datetime(2025, 9, 26, 8, 37, 50, 694156), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:37:50,700 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:37:50,700 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:37:50,700 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:00 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:37:50,885 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:37:50,886 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:37:52.886914+00:00 (in 2.000880 seconds) exportactionlogsworker stdout | 2025-09-26 08:37:50,886 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:50 GMT)" (scheduled at 2025-09-26 08:37:50.885619+00:00) exportactionlogsworker stdout | 2025-09-26 08:37:50,886 [56] [DEBUG] [workers.queueworker] Getting work item from queue. exportactionlogsworker stdout | 2025-09-26 08:37:50,887 [56] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 37, 50, 886382), True, datetime.datetime(2025, 9, 26, 8, 37, 50, 886382), 0, 'exportactionlogs/%', 50, 1, 0]) exportactionlogsworker stdout | 2025-09-26 08:37:50,894 [56] [DEBUG] [workers.queueworker] No more work. exportactionlogsworker stdout | 2025-09-26 08:37:50,894 [56] [DEBUG] [data.database] Disconnecting from database. exportactionlogsworker stdout | 2025-09-26 08:37:50,894 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:50 GMT)" executed successfully globalpromstats stdout | 2025-09-26 08:37:51,883 [58] [DEBUG] [apscheduler.scheduler] Looking for jobs to run globalpromstats stdout | 2025-09-26 08:37:51,884 [58] [INFO] [apscheduler.executors.default] Running job "GlobalPrometheusStatsWorker._try_report_stats (trigger: interval[1:00:00], next run at: 2025-09-26 08:37:51 GMT)" (scheduled at 2025-09-26 08:37:51.883387+00:00) globalpromstats stdout | 2025-09-26 08:37:51,884 [58] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 09:37:51.883387+00:00 (in 3599.998838 seconds) globalpromstats stdout | 2025-09-26 08:37:51,884 [58] [DEBUG] [__main__] Attempting to report stats globalpromstats stdout | 2025-09-26 08:37:51,884 [58] [DEBUG] [util.locking] Acquiring global lock GLOBAL_PROM_STATS globalpromstats stdout | 2025-09-26 08:37:51,892 [58] [DEBUG] [redis_lock.acquire] Getting 'lock:GLOBAL_PROM_STATS' ... globalpromstats stdout | 2025-09-26 08:37:51,896 [58] [INFO] [redis_lock.acquire] Got lock for 'lock:GLOBAL_PROM_STATS'. globalpromstats stdout | 2025-09-26 08:37:51,896 [58] [DEBUG] [util.locking] Acquired lock GLOBAL_PROM_STATS globalpromstats stdout | 2025-09-26 08:37:51,896 [58] [DEBUG] [__main__] Reporting global stats globalpromstats stdout | 2025-09-26 08:37:51,897 [58] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT 1 FROM "repository" AS "t1") AS "_wrapped"', []) globalpromstats stdout | 2025-09-26 08:37:51,902 [58] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT 1 FROM "user" AS "t1" WHERE ((("t1"."organization" = %s) AND ("t1"."robot" = %s)) AND ("t1"."id" NOT IN (SELECT "t2"."namespace_id" FROM "deletednamespace" AS "t2")))) AS "_wrapped"', [False, False]) globalpromstats stdout | 2025-09-26 08:37:51,904 [58] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT 1 FROM "user" AS "t1" WHERE ((("t1"."organization" = %s) AND ("t1"."robot" = %s)) AND ("t1"."enabled" = %s))) AS "_wrapped"', [True, False, True]) globalpromstats stdout | 2025-09-26 08:37:51,905 [58] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT 1 FROM "robotaccounttoken" AS "t1") AS "_wrapped"', []) globalpromstats stdout | 2025-09-26 08:37:51,906 [58] [DEBUG] [data.database] Disconnecting from database. globalpromstats stdout | 2025-09-26 08:37:51,906 [58] [DEBUG] [util.locking] Releasing lock GLOBAL_PROM_STATS globalpromstats stdout | 2025-09-26 08:37:51,906 [58] [DEBUG] [redis_lock.release] Releasing 'lock:GLOBAL_PROM_STATS'. globalpromstats stdout | 2025-09-26 08:37:51,908 [58] [DEBUG] [util.locking] Released lock GLOBAL_PROM_STATS globalpromstats stdout | 2025-09-26 08:37:51,908 [58] [INFO] [apscheduler.executors.default] Job "GlobalPrometheusStatsWorker._try_report_stats (trigger: interval[1:00:00], next run at: 2025-09-26 09:37:51 GMT)" executed successfully blobuploadcleanupworker stdout | 2025-09-26 08:37:52,079 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} proxycacheblobworker stdout | 2025-09-26 08:37:52,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:37:52,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:02.477454+00:00 (in 9.999499 seconds) proxycacheblobworker stdout | 2025-09-26 08:37:52,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:02 GMT)" (scheduled at 2025-09-26 08:37:52.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:37:52,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:37:52,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 37, 52, 478314), True, datetime.datetime(2025, 9, 26, 8, 37, 52, 478314), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:37:52,487 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:37:52,487 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:37:52,487 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:02 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:37:52,887 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:37:52,887 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:50.885619+00:00 (in 57.998139 seconds) exportactionlogsworker stdout | 2025-09-26 08:37:52,887 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:52 GMT)" (scheduled at 2025-09-26 08:37:52.886914+00:00) exportactionlogsworker stdout | 2025-09-26 08:37:52,887 [56] [DEBUG] [workers.queueworker] Running watchdog. exportactionlogsworker stdout | 2025-09-26 08:37:52,887 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:52 GMT)" executed successfully globalpromstats stdout | 2025-09-26 08:37:55,159 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} proxycacheblobworker stdout | 2025-09-26 08:37:55,873 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} notificationworker stdout | 2025-09-26 08:37:56,962 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} repositoryactioncounter stdout | 2025-09-26 08:37:57,055 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} gcworker stdout | 2025-09-26 08:37:57,083 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:37:57,084 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:07.085344+00:00 (in 10.001607 seconds) gcworker stdout | 2025-09-26 08:37:57,084 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:27 GMT)" (scheduled at 2025-09-26 08:37:57.083344+00:00) gcworker stdout | 2025-09-26 08:37:57,084 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:37:57,084 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:27 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:37:57,244 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} manifestsubjectbackfillworker stdout | 2025-09-26 08:37:57,775 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} namespacegcworker stdout | 2025-09-26 08:37:59,791 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:37:59,791 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:08.793810+00:00 (in 9.002268 seconds) namespacegcworker stdout | 2025-09-26 08:37:59,791 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:59 GMT)" (scheduled at 2025-09-26 08:37:59.791127+00:00) namespacegcworker stdout | 2025-09-26 08:37:59,791 [66] [DEBUG] [workers.queueworker] Getting work item from queue. namespacegcworker stdout | 2025-09-26 08:37:59,792 [66] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 37, 59, 791846), True, datetime.datetime(2025, 9, 26, 8, 37, 59, 791846), 0, 'namespacegc/%', 50, 1, 0]) namespacegcworker stdout | 2025-09-26 08:37:59,799 [66] [DEBUG] [workers.queueworker] No more work. namespacegcworker stdout | 2025-09-26 08:37:59,799 [66] [DEBUG] [data.database] Disconnecting from database. namespacegcworker stdout | 2025-09-26 08:37:59,799 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:38:59 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:38:00,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:38:00,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:10.692901+00:00 (in 9.999540 seconds) notificationworker stdout | 2025-09-26 08:38:00,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:10 GMT)" (scheduled at 2025-09-26 08:38:00.692901+00:00) notificationworker stdout | 2025-09-26 08:38:00,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:38:00,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 38, 0, 693714), True, datetime.datetime(2025, 9, 26, 8, 38, 0, 693714), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:38:00,702 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:38:00,702 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:38:00,702 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:10 GMT)" executed successfully proxycacheblobworker stdout | 2025-09-26 08:38:02,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:38:02,478 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:12.477454+00:00 (in 9.999467 seconds) proxycacheblobworker stdout | 2025-09-26 08:38:02,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:12 GMT)" (scheduled at 2025-09-26 08:38:02.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:38:02,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:38:02,480 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 38, 2, 478338), True, datetime.datetime(2025, 9, 26, 8, 38, 2, 478338), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:38:02,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:38:02,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:38:02,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:12 GMT)" executed successfully storagereplication stdout | 2025-09-26 08:38:02,580 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} namespacegcworker stdout | 2025-09-26 08:38:02,972 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-web stdout | 2025-09-26 08:38:03,199 [247] [DEBUG] [app] Starting request: urn:request:f21aa82e-b579-4bb4-91a1-7c8e204135a7 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:38:03,200 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:38:03,202 [257] [DEBUG] [app] Starting request: urn:request:2139f3ca-f31d-4b34-b64a-158523b8a8f6 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:38:03,202 [257] [DEBUG] [app] Ending request: urn:request:2139f3ca-f31d-4b34-b64a-158523b8a8f6 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:2139f3ca-f31d-4b34-b64a-158523b8a8f6', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:38:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-registry stdout | 2025-09-26 08:38:03,203 [257] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:38:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:38:03,203 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:38:03,204 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:38:03,205 [249] [DEBUG] [app] Starting request: urn:request:eeb63042-077f-4b5c-9fc4-b452006ebf93 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:38:03,205 [249] [DEBUG] [app] Ending request: urn:request:eeb63042-077f-4b5c-9fc4-b452006ebf93 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:eeb63042-077f-4b5c-9fc4-b452006ebf93', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:38:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.009 159 0.009) gunicorn-web stdout | 2025-09-26 08:38:03,213 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:38:03,213 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:38:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:38:03,213 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:38:03,213 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:38:03,213 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:38:03,218 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:38:03,218 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:38:03,222 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:38:03,223 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:38:03,223 [247] [DEBUG] [app] Ending request: urn:request:f21aa82e-b579-4bb4-91a1-7c8e204135a7 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:f21aa82e-b579-4bb4-91a1-7c8e204135a7', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:38:03,223 [247] [DEBUG] [data.database] Disconnecting from database. nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:38:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.026 118 0.026) gunicorn-web stdout | 2025-09-26 08:38:03,224 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:38:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" gunicorn-web stdout | 2025-09-26 08:38:03,261 [247] [DEBUG] [app] Starting request: urn:request:c9a869dd-9437-41fc-ac66-225a75221f5d (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:38:03,263 [257] [DEBUG] [app] Starting request: urn:request:6d3cffdd-3f79-4d39-9a63-e6ce9b4df964 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:38:03,263 [257] [DEBUG] [app] Ending request: urn:request:6d3cffdd-3f79-4d39-9a63-e6ce9b4df964 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:6d3cffdd-3f79-4d39-9a63-e6ce9b4df964', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:38:03,264 [257] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:38:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:38:03,264 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:38:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:38:03,265 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:38:03,266 [250] [DEBUG] [app] Starting request: urn:request:b9f1814f-fd72-4e8a-9571-4eff9b64efb1 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:38:03,267 [250] [DEBUG] [app] Ending request: urn:request:b9f1814f-fd72-4e8a-9571-4eff9b64efb1 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:b9f1814f-fd72-4e8a-9571-4eff9b64efb1', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:38:03,267 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:38:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:38:03,267 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:38:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:38:03,267 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:38:03,268 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:38:03,268 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:38:03,271 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:38:03,271 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:38:03,275 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:38:03,276 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:38:03,277 [247] [DEBUG] [app] Ending request: urn:request:c9a869dd-9437-41fc-ac66-225a75221f5d (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:c9a869dd-9437-41fc-ac66-225a75221f5d', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:38:03,277 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:38:03,277 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:38:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:38:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.016 118 0.016) autopruneworker stdout | 2025-09-26 08:38:04,361 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} expiredappspecifictokenworker stdout | 2025-09-26 08:38:04,440 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} manifestbackfillworker stdout | 2025-09-26 08:38:04,657 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} builder stdout | 2025-09-26 08:38:05,052 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} logrotateworker stdout | 2025-09-26 08:38:06,367 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gcworker stdout | 2025-09-26 08:38:07,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:38:07,086 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:27.083344+00:00 (in 19.997146 seconds) gcworker stdout | 2025-09-26 08:38:07,086 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:37 GMT)" (scheduled at 2025-09-26 08:38:07.085344+00:00) gcworker stdout | 2025-09-26 08:38:07,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gcworker stdout | 2025-09-26 08:38:07,093 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875587092, None, 1, 0]) gcworker stdout | 2025-09-26 08:38:07,094 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:38:07,094 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:37 GMT)" executed successfully securityworker stdout | 2025-09-26 08:38:07,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:38:07,683 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:11.684816+00:00 (in 4.000889 seconds) securityworker stdout | 2025-09-26 08:38:07,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:37 GMT)" (scheduled at 2025-09-26 08:38:07.683505+00:00) securityworker stdout | 2025-09-26 08:38:07,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:38:07,684 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:38:07,686 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:38:07,688 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:38:07,694 [86] [DEBUG] [util.migrate.allocator] Total range: 34-36 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Total range: 34-36 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:38:07,694 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:38:07,694 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 34-36 securityworker stdout | 2025-09-26 08:38:07,694 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 34 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 34-36 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 34 securityworker stdout | 2025-09-26 08:38:07,695 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 34, 36]) securityworker stdout | 2025-09-26 08:38:07,697 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 34-36 by worker securityworker stdout | 2025-09-26 08:38:07,697 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 34-36 securityworker stdout | 2025-09-26 08:38:07,697 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 34 securityworker stdout | 2025-09-26 08:38:07,697 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:38:07,697 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:38:07,697 [86] [DEBUG] [util.migrate.allocator] Total range: 36-34 securityworker stdout | 2025-09-26 08:38:07,697 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:38:07,697 [86] [DEBUG] [util.migrate.allocator] Total range: 34-36 securityworker stdout | 2025-09-26 08:38:07,697 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:38:07,697 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 34-36 securityworker stdout | 2025-09-26 08:38:07,697 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 34 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 34-36 by worker securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 34-36 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 34 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Total range: 36-34 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Total range: 34-36 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 34-36 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 34 securityworker stdout | 2025-09-26 08:38:07,698 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 33, 7, 688407), 34, 36]) securityworker stdout | 2025-09-26 08:38:07,698 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 34-36 by worker securityworker stdout | 2025-09-26 08:38:07,699 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 34-36 securityworker stdout | 2025-09-26 08:38:07,699 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 34 securityworker stdout | 2025-09-26 08:38:07,699 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 34-36 by worker securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 34-36 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 34 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:38:07,699 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:38:07,699 [86] [DEBUG] [util.migrate.allocator] Total range: 36-34 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Total range: 36-34 securityworker stdout | 2025-09-26 08:38:07,699 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:38:07,700 [86] [DEBUG] [util.migrate.allocator] Total range: 34-36 securityworker stdout | 2025-09-26 08:38:07,700 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Total range: 34-36 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 34-36 securityworker stdout | 2025-09-26 08:38:07,700 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 34-36 securityworker stdout | 2025-09-26 08:38:07,700 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 34 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 34 securityworker stdout | 2025-09-26 08:38:07,701 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 33, 7, 688407), 34, 36]) securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 34-36 by worker securityworker stdout | 2025-09-26 08:38:07,702 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 34-36 by worker securityworker stdout | 2025-09-26 08:38:07,702 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 34-36 securityworker stdout | 2025-09-26 08:38:07,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 34 securityworker stdout | 2025-09-26 08:38:07,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:38:07,702 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:38:07,702 [86] [DEBUG] [util.migrate.allocator] Total range: 36-34 securityworker stdout | 2025-09-26 08:38:07,702 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:38:07,702 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 34-36 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 34 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] Total range: 36-34 securityworker stderr | 2025-09-26 08:38:07 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:38:07,703 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:37 GMT)" executed successfully namespacegcworker stdout | 2025-09-26 08:38:08,794 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:38:08,794 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:59.791127+00:00 (in 50.996880 seconds) namespacegcworker stdout | 2025-09-26 08:38:08,794 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:08 GMT)" (scheduled at 2025-09-26 08:38:08.793810+00:00) namespacegcworker stdout | 2025-09-26 08:38:08,794 [66] [DEBUG] [workers.queueworker] Running watchdog. namespacegcworker stdout | 2025-09-26 08:38:08,794 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:08 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:38:09,711 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:38:09,716 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:38:09,745 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:38:09,759 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:38:09,773 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gcworker stdout | 2025-09-26 08:38:09,849 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} securityscanningnotificationworker stdout | 2025-09-26 08:38:10,037 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} queuecleanupworker stdout | 2025-09-26 08:38:10,252 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} gunicorn-secscan stdout | 2025-09-26 08:38:10,433 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} gunicorn-secscan stdout | 2025-09-26 08:38:10,440 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:38:10,444 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} securityscanningnotificationworker stdout | 2025-09-26 08:38:10,584 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:38:10,584 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:28.587130+00:00 (in 18.002329 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:38:10,584 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:10 GMT)" (scheduled at 2025-09-26 08:38:10.584403+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:38:10,585 [82] [DEBUG] [workers.queueworker] Getting work item from queue. securityscanningnotificationworker stdout | 2025-09-26 08:38:10,586 [82] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 38, 10, 585436), True, datetime.datetime(2025, 9, 26, 8, 38, 10, 585436), 0, 'secscanv4/%', 50, 1, 0]) securityscanningnotificationworker stdout | 2025-09-26 08:38:10,593 [82] [DEBUG] [workers.queueworker] No more work. securityscanningnotificationworker stdout | 2025-09-26 08:38:10,593 [82] [DEBUG] [data.database] Disconnecting from database. securityscanningnotificationworker stdout | 2025-09-26 08:38:10,593 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:10 GMT)" executed successfully autopruneworker stdout | 2025-09-26 08:38:10,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:38:10,598 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:40.598100+00:00 (in 29.999593 seconds) autopruneworker stdout | 2025-09-26 08:38:10,598 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:40 GMT)" (scheduled at 2025-09-26 08:38:10.598100+00:00) autopruneworker stdout | 2025-09-26 08:38:10,603 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758872290603, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:38:10,606 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:38:10,606 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:38:10,606 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:40 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:38:10,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:38:10,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:20.692901+00:00 (in 9.999569 seconds) notificationworker stdout | 2025-09-26 08:38:10,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:20 GMT)" (scheduled at 2025-09-26 08:38:10.692901+00:00) notificationworker stdout | 2025-09-26 08:38:10,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:38:10,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 38, 10, 693622), True, datetime.datetime(2025, 9, 26, 8, 38, 10, 693622), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:38:10,700 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:38:10,700 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:38:10,700 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:20 GMT)" executed successfully chunkcleanupworker stdout | 2025-09-26 08:38:11,076 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} securityworker stdout | 2025-09-26 08:38:11,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:38:11,685 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:37.683505+00:00 (in 25.998227 seconds) securityworker stdout | 2025-09-26 08:38:11,685 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:41 GMT)" (scheduled at 2025-09-26 08:38:11.684816+00:00) securityworker stdout | 2025-09-26 08:38:11,685 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:38:11,685 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:38:11,687 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:38:11,690 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:38:11,695 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:38:11,695 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:38:11,695 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:38:11,695 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:38:11,696 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 36]) securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:38:11,698 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:38:11,698 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:38:11,698 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:38:11,698 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:38:11,698 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:38:11,698 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:38:11,698 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:38:11,698 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:38:11,698 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:38:11,698 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:38:11,698 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:38:11,699 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 33, 11, 690112), 1, 36]) securityworker stdout | 2025-09-26 08:38:11,700 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:38:11,700 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:38:11,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:38:11,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:38:11,700 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:38:11,700 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:38:11,700 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:38:11,700 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:38:11,700 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:38:11,700 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:38:11,700 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:38:11,701 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 33, 11, 690112), 1, 36]) securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:38:11,702 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:38:11,702 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:38:11,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:38:11,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:38:11,702 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:38:11,702 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:38:11,702 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:38:11,702 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:38:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:38:11,702 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:41 GMT)" executed successfully repositorygcworker stdout | 2025-09-26 08:38:12,059 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} proxycacheblobworker stdout | 2025-09-26 08:38:12,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:38:12,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:22.477454+00:00 (in 9.999494 seconds) proxycacheblobworker stdout | 2025-09-26 08:38:12,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:22 GMT)" (scheduled at 2025-09-26 08:38:12.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:38:12,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:38:12,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 38, 12, 478428), True, datetime.datetime(2025, 9, 26, 8, 38, 12, 478428), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:38:12,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:38:12,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:38:12,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:22 GMT)" executed successfully servicekey stdout | 2025-09-26 08:38:12,677 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:38:12,747 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} gunicorn-registry stdout | 2025-09-26 08:38:14,233 [253] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '253'} gunicorn-registry stdout | 2025-09-26 08:38:14,238 [257] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '257'} gunicorn-registry stdout | 2025-09-26 08:38:14,242 [59] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '59'} gunicorn-registry stdout | 2025-09-26 08:38:14,248 [255] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '255'} gunicorn-registry stdout | 2025-09-26 08:38:14,252 [256] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '256'} gunicorn-registry stdout | 2025-09-26 08:38:14,257 [258] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '258'} gunicorn-registry stdout | 2025-09-26 08:38:14,263 [252] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '252'} gunicorn-registry stdout | 2025-09-26 08:38:14,293 [251] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '251'} gunicorn-registry stdout | 2025-09-26 08:38:14,298 [254] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '254'} buildlogsarchiver stdout | 2025-09-26 08:38:15,580 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} buildlogsarchiver stdout | 2025-09-26 08:38:17,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:38:17,375 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:47.375102+00:00 (in 29.999544 seconds) buildlogsarchiver stdout | 2025-09-26 08:38:17,375 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:47 GMT)" (scheduled at 2025-09-26 08:38:17.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:38:17,376 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 38, 17, 375825), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:38:17,383 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:38:17,383 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:38:17,383 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:47 GMT)" executed successfully manifestsubjectbackfillworker stdout | 2025-09-26 08:38:17,985 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:38:17,986 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:33.984400+00:00 (in 15.998213 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:38:17,986 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:17 GMT)" (scheduled at 2025-09-26 08:38:17.985743+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:38:17,986 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."artifact_type_backfilled" = %s) OR ("t1"."artifact_type_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:38:17,993 [64] [DEBUG] [__main__] Manifest artifact_type backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:38:17,993 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:38:17,993 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:17 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:38:18,200 [247] [DEBUG] [app] Starting request: urn:request:53f9ffec-0b82-4627-83b0-700ecef5a54e (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:38:18,204 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:38:18,206 [257] [DEBUG] [app] Starting request: urn:request:2e150d09-9c90-43db-8d37-9b376d8524e3 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:38:18,207 [257] [DEBUG] [app] Ending request: urn:request:2e150d09-9c90-43db-8d37-9b376d8524e3 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:2e150d09-9c90-43db-8d37-9b376d8524e3', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:38:18,207 [257] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:38:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:38:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:38:18,207 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:38:18,208 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:38:18,209 [249] [DEBUG] [app] Starting request: urn:request:1978f3a8-c89b-49f4-b92d-d4df66b6274c (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:38:18,210 [249] [DEBUG] [app] Ending request: urn:request:1978f3a8-c89b-49f4-b92d-d4df66b6274c (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:1978f3a8-c89b-49f4-b92d-d4df66b6274c', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:38:18 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.002) gunicorn-web stdout | 2025-09-26 08:38:18,210 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:38:18 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:38:18,210 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:38:18,210 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:38:18,210 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:38:18,210 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:38:18,215 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:38:18,215 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:38:18,219 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:38:18,220 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:38:18,221 [247] [DEBUG] [app] Ending request: urn:request:53f9ffec-0b82-4627-83b0-700ecef5a54e (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:53f9ffec-0b82-4627-83b0-700ecef5a54e', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:38:18,221 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:38:18,221 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:38:18 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:38:18 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.022 118 0.022) gunicorn-web stdout | 2025-09-26 08:38:18,261 [247] [DEBUG] [app] Starting request: urn:request:6688c800-c14c-413b-bbe9-835b24ce2d94 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:38:18,263 [257] [DEBUG] [app] Starting request: urn:request:4c68ad61-faeb-481b-948f-5882abaa2915 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:38:18,263 [257] [DEBUG] [app] Ending request: urn:request:4c68ad61-faeb-481b-948f-5882abaa2915 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:4c68ad61-faeb-481b-948f-5882abaa2915', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:38:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-registry stdout | 2025-09-26 08:38:18,263 [257] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:38:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:38:18,264 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:38:18,264 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:38:18,266 [249] [DEBUG] [app] Starting request: urn:request:15b3b6bc-1a54-4fe2-a6e0-6cebec24759a (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:38:18,266 [249] [DEBUG] [app] Ending request: urn:request:15b3b6bc-1a54-4fe2-a6e0-6cebec24759a (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:15b3b6bc-1a54-4fe2-a6e0-6cebec24759a', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:38:18,267 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:38:18 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:38:18,267 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:38:18 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:38:18,267 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:38:18,267 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:38:18,267 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:38:18,271 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:38:18,271 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:38:18,274 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:38:18,275 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:38:18,276 [247] [DEBUG] [app] Ending request: urn:request:6688c800-c14c-413b-bbe9-835b24ce2d94 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:6688c800-c14c-413b-bbe9-835b24ce2d94', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:38:18,276 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:38:18,276 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:38:18 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:38:18 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.015 118 0.015) securityworker stdout | 2025-09-26 08:38:18,783 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} repositorygcworker stdout | 2025-09-26 08:38:19,075 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:38:19,076 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:28.077240+00:00 (in 9.001116 seconds) repositorygcworker stdout | 2025-09-26 08:38:19,076 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:19 GMT)" (scheduled at 2025-09-26 08:38:19.075668+00:00) repositorygcworker stdout | 2025-09-26 08:38:19,076 [81] [DEBUG] [workers.queueworker] Getting work item from queue. repositorygcworker stdout | 2025-09-26 08:38:19,076 [81] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 38, 19, 76398), True, datetime.datetime(2025, 9, 26, 8, 38, 19, 76398), 0, 'repositorygc/%', 50, 1, 0]) repositorygcworker stdout | 2025-09-26 08:38:19,085 [81] [DEBUG] [workers.queueworker] No more work. repositorygcworker stdout | 2025-09-26 08:38:19,085 [81] [DEBUG] [data.database] Disconnecting from database. repositorygcworker stdout | 2025-09-26 08:38:19,085 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:19 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:38:20,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:38:20,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:30.692901+00:00 (in 9.999547 seconds) notificationworker stdout | 2025-09-26 08:38:20,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:30 GMT)" (scheduled at 2025-09-26 08:38:20.692901+00:00) notificationworker stdout | 2025-09-26 08:38:20,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:38:20,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 38, 20, 693653), True, datetime.datetime(2025, 9, 26, 8, 38, 20, 693653), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:38:20,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:38:20,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:38:20,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:30 GMT)" executed successfully blobuploadcleanupworker stdout | 2025-09-26 08:38:22,108 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} proxycacheblobworker stdout | 2025-09-26 08:38:22,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:38:22,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:26.483749+00:00 (in 4.005788 seconds) proxycacheblobworker stdout | 2025-09-26 08:38:22,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:32 GMT)" (scheduled at 2025-09-26 08:38:22.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:38:22,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:38:22,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 38, 22, 478304), True, datetime.datetime(2025, 9, 26, 8, 38, 22, 478304), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:38:22,487 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:38:22,487 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:38:22,487 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:32 GMT)" executed successfully globalpromstats stdout | 2025-09-26 08:38:25,177 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} proxycacheblobworker stdout | 2025-09-26 08:38:25,889 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} proxycacheblobworker stdout | 2025-09-26 08:38:26,483 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:38:26,484 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:32.477454+00:00 (in 5.993234 seconds) proxycacheblobworker stdout | 2025-09-26 08:38:26,484 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:26 GMT)" (scheduled at 2025-09-26 08:38:26.483749+00:00) proxycacheblobworker stdout | 2025-09-26 08:38:26,484 [69] [DEBUG] [workers.queueworker] Running watchdog. proxycacheblobworker stdout | 2025-09-26 08:38:26,484 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:26 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:38:26,979 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} repositoryactioncounter stdout | 2025-09-26 08:38:27,081 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} gcworker stdout | 2025-09-26 08:38:27,083 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:38:27,084 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:37.085344+00:00 (in 10.001139 seconds) gcworker stdout | 2025-09-26 08:38:27,084 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:57 GMT)" (scheduled at 2025-09-26 08:38:27.083344+00:00) gcworker stdout | 2025-09-26 08:38:27,084 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:38:27,084 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:38:57 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:38:27,260 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} manifestsubjectbackfillworker stdout | 2025-09-26 08:38:27,792 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} repositorygcworker stdout | 2025-09-26 08:38:28,077 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:38:28,077 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:19.075668+00:00 (in 50.997991 seconds) repositorygcworker stdout | 2025-09-26 08:38:28,077 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:28 GMT)" (scheduled at 2025-09-26 08:38:28.077240+00:00) repositorygcworker stdout | 2025-09-26 08:38:28,077 [81] [DEBUG] [workers.queueworker] Running watchdog. repositorygcworker stdout | 2025-09-26 08:38:28,077 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:28 GMT)" executed successfully securityscanningnotificationworker stdout | 2025-09-26 08:38:28,587 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:38:28,587 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:10.584403+00:00 (in 41.996828 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:38:28,587 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:28 GMT)" (scheduled at 2025-09-26 08:38:28.587130+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:38:28,587 [82] [DEBUG] [workers.queueworker] Running watchdog. securityscanningnotificationworker stdout | 2025-09-26 08:38:28,587 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:28 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:38:30,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:38:30,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:37.771811+00:00 (in 7.078460 seconds) notificationworker stdout | 2025-09-26 08:38:30,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:40 GMT)" (scheduled at 2025-09-26 08:38:30.692901+00:00) notificationworker stdout | 2025-09-26 08:38:30,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:38:30,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 38, 30, 693692), True, datetime.datetime(2025, 9, 26, 8, 38, 30, 693692), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:38:30,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:38:30,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:38:30,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:40 GMT)" executed successfully proxycacheblobworker stdout | 2025-09-26 08:38:32,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:38:32,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:42.477454+00:00 (in 9.999573 seconds) proxycacheblobworker stdout | 2025-09-26 08:38:32,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:42 GMT)" (scheduled at 2025-09-26 08:38:32.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:38:32,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:38:32,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 38, 32, 478305), True, datetime.datetime(2025, 9, 26, 8, 38, 32, 478305), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:38:32,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:38:32,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:38:32,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:42 GMT)" executed successfully storagereplication stdout | 2025-09-26 08:38:32,596 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} namespacegcworker stdout | 2025-09-26 08:38:32,987 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-web stdout | 2025-09-26 08:38:33,199 [247] [DEBUG] [app] Starting request: urn:request:09bfd15d-dcba-4811-89c6-17179dfc6f69 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:38:33,200 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:38:33,202 [251] [DEBUG] [app] Starting request: urn:request:ffeae7bc-e59b-4389-8e27-fed7088751b5 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:38:33,203 [251] [DEBUG] [app] Ending request: urn:request:ffeae7bc-e59b-4389-8e27-fed7088751b5 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:ffeae7bc-e59b-4389-8e27-fed7088751b5', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:38:33,203 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:38:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:38:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:38:33,203 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:38:33,204 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:38:33,205 [249] [DEBUG] [app] Starting request: urn:request:60f60775-3f4d-483f-9224-ec12406eca7d (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:38:33,206 [249] [DEBUG] [app] Ending request: urn:request:60f60775-3f4d-483f-9224-ec12406eca7d (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:60f60775-3f4d-483f-9224-ec12406eca7d', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:38:33,206 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:38:33 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:38:33 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:38:33,206 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:38:33,207 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:38:33,207 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:38:33,207 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:38:33,211 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:38:33,211 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:38:33,215 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:38:33,216 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:38:33,217 [247] [DEBUG] [app] Ending request: urn:request:09bfd15d-dcba-4811-89c6-17179dfc6f69 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:09bfd15d-dcba-4811-89c6-17179dfc6f69', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:38:33,217 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:38:33,217 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:38:33 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:38:33 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.018 118 0.018) gunicorn-web stdout | 2025-09-26 08:38:33,261 [250] [DEBUG] [app] Starting request: urn:request:10187557-9097-46e0-9beb-e52389c55bc7 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:38:33,262 [250] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:38:33,263 [251] [DEBUG] [app] Starting request: urn:request:62ba01bb-b7f8-4cd4-bbf7-3d6d3a2a412d (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:38:33,263 [251] [DEBUG] [app] Ending request: urn:request:62ba01bb-b7f8-4cd4-bbf7-3d6d3a2a412d (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:62ba01bb-b7f8-4cd4-bbf7-3d6d3a2a412d', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:38:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.001) gunicorn-registry stdout | 2025-09-26 08:38:33,264 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:38:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:38:33,264 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:38:33,265 [250] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:38:33,266 [249] [DEBUG] [app] Starting request: urn:request:7e2597eb-d188-45af-b2f4-99c2c153cb3e (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:38:33,266 [249] [DEBUG] [app] Ending request: urn:request:7e2597eb-d188-45af-b2f4-99c2c153cb3e (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:7e2597eb-d188-45af-b2f4-99c2c153cb3e', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:38:33,267 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:38:33 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:38:33 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.002) gunicorn-web stdout | 2025-09-26 08:38:33,267 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:38:33,267 [250] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:38:33,267 [250] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:38:33,267 [250] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:38:33,271 [250] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:38:33,271 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:38:33,276 [250] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:38:33,277 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:38:33,278 [250] [DEBUG] [app] Ending request: urn:request:10187557-9097-46e0-9beb-e52389c55bc7 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:10187557-9097-46e0-9beb-e52389c55bc7', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:38:33,278 [250] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:38:33,278 [250] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:38:33 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:38:33 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.018 118 0.018) manifestsubjectbackfillworker stdout | 2025-09-26 08:38:33,985 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:38:33,985 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:17.985743+00:00 (in 44.000235 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:38:33,985 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:33 GMT)" (scheduled at 2025-09-26 08:38:33.984400+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:38:33,986 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."subject_backfilled" = %s) OR ("t1"."subject_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:38:33,992 [64] [DEBUG] [__main__] Manifest subject backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:38:33,992 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:38:33,992 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:33 GMT)" executed successfully autopruneworker stdout | 2025-09-26 08:38:34,376 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} expiredappspecifictokenworker stdout | 2025-09-26 08:38:34,456 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} manifestbackfillworker stdout | 2025-09-26 08:38:34,687 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} builder stdout | 2025-09-26 08:38:35,067 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} logrotateworker stdout | 2025-09-26 08:38:36,382 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gcworker stdout | 2025-09-26 08:38:37,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:38:37,085 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:57.083344+00:00 (in 19.997564 seconds) gcworker stdout | 2025-09-26 08:38:37,085 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:07 GMT)" (scheduled at 2025-09-26 08:38:37.085344+00:00) gcworker stdout | 2025-09-26 08:38:37,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gcworker stdout | 2025-09-26 08:38:37,092 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875617091, None, 1, 0]) gcworker stdout | 2025-09-26 08:38:37,093 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:38:37,093 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:07 GMT)" executed successfully securityworker stdout | 2025-09-26 08:38:37,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:38:37,683 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:41.684816+00:00 (in 4.000872 seconds) securityworker stdout | 2025-09-26 08:38:37,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:07 GMT)" (scheduled at 2025-09-26 08:38:37.683505+00:00) securityworker stdout | 2025-09-26 08:38:37,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:38:37,684 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:38:37,686 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:38:37,688 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:38:37,693 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:38:37,693 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:07 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:38:37,772 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:38:37,772 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:40.692901+00:00 (in 2.920658 seconds) notificationworker stdout | 2025-09-26 08:38:37,772 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:37 GMT)" (scheduled at 2025-09-26 08:38:37.771811+00:00) notificationworker stdout | 2025-09-26 08:38:37,772 [68] [DEBUG] [workers.queueworker] Running watchdog. notificationworker stdout | 2025-09-26 08:38:37,772 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:37 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:38:39,729 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:38:39,734 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:38:39,761 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:38:39,775 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:38:39,788 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gcworker stdout | 2025-09-26 08:38:39,863 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} securityscanningnotificationworker stdout | 2025-09-26 08:38:40,054 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} queuecleanupworker stdout | 2025-09-26 08:38:40,276 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} gunicorn-secscan stdout | 2025-09-26 08:38:40,451 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} gunicorn-secscan stdout | 2025-09-26 08:38:40,455 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:38:40,461 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} autopruneworker stdout | 2025-09-26 08:38:40,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:38:40,599 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:10.598100+00:00 (in 29.999076 seconds) autopruneworker stdout | 2025-09-26 08:38:40,599 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:10 GMT)" (scheduled at 2025-09-26 08:38:40.598100+00:00) autopruneworker stdout | 2025-09-26 08:38:40,607 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758872320606, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:38:40,612 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:38:40,612 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:38:40,612 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:10 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:38:40,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:38:40,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:50.692901+00:00 (in 9.999324 seconds) notificationworker stdout | 2025-09-26 08:38:40,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:50 GMT)" (scheduled at 2025-09-26 08:38:40.692901+00:00) notificationworker stdout | 2025-09-26 08:38:40,694 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:38:40,695 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 38, 40, 694200), True, datetime.datetime(2025, 9, 26, 8, 38, 40, 694200), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:38:40,703 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:38:40,703 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:38:40,703 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:50 GMT)" executed successfully chunkcleanupworker stdout | 2025-09-26 08:38:41,092 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} securityworker stdout | 2025-09-26 08:38:41,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:38:41,685 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:07.683505+00:00 (in 25.997870 seconds) securityworker stdout | 2025-09-26 08:38:41,685 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:11 GMT)" (scheduled at 2025-09-26 08:38:41.684816+00:00) securityworker stdout | 2025-09-26 08:38:41,686 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:38:41,686 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:38:41,688 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:38:41,691 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:38:41,699 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:38:41,699 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:38:41,699 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:38:41,699 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:38:41,700 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 36]) securityworker stdout | 2025-09-26 08:38:41,702 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:38:41,702 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:38:41,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:38:41,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:38:41,702 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:38:41,702 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:38:41,702 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:38:41,702 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:38:41,702 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:38:41,702 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:38:41,702 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:38:41,703 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 33, 41, 690919), 1, 36]) securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:38:41,704 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:38:41,704 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:38:41,704 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:38:41,704 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:38:41,704 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:38:41,704 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:38:41,704 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:38:41,704 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:38:41,704 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:38:41,704 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:38:41,704 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:38:41,706 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 33, 41, 690919), 1, 36]) securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:38:41,707 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:38:41,707 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:38:41,707 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:38:41,707 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:38:41,707 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:38:41,707 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:38:41,707 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:38:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:38:41,707 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:38:41,707 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:11 GMT)" executed successfully repositorygcworker stdout | 2025-09-26 08:38:42,074 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} proxycacheblobworker stdout | 2025-09-26 08:38:42,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:38:42,478 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:52.477454+00:00 (in 9.999475 seconds) proxycacheblobworker stdout | 2025-09-26 08:38:42,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:52 GMT)" (scheduled at 2025-09-26 08:38:42.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:38:42,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:38:42,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 38, 42, 478330), True, datetime.datetime(2025, 9, 26, 8, 38, 42, 478330), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:38:42,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:38:42,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:38:42,487 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:38:52 GMT)" executed successfully servicekey stdout | 2025-09-26 08:38:42,706 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:38:42,764 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} gunicorn-registry stdout | 2025-09-26 08:38:44,256 [253] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '253'} gunicorn-registry stdout | 2025-09-26 08:38:44,261 [257] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '257'} gunicorn-registry stdout | 2025-09-26 08:38:44,265 [59] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '59'} gunicorn-registry stdout | 2025-09-26 08:38:44,270 [255] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '255'} gunicorn-registry stdout | 2025-09-26 08:38:44,276 [256] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '256'} gunicorn-registry stdout | 2025-09-26 08:38:44,280 [258] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '258'} gunicorn-registry stdout | 2025-09-26 08:38:44,284 [252] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '252'} gunicorn-registry stdout | 2025-09-26 08:38:44,323 [251] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '251'} gunicorn-registry stdout | 2025-09-26 08:38:44,327 [254] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '254'} buildlogsarchiver stdout | 2025-09-26 08:38:45,597 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} buildlogsarchiver stdout | 2025-09-26 08:38:47,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:38:47,375 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:17.375102+00:00 (in 29.999565 seconds) buildlogsarchiver stdout | 2025-09-26 08:38:47,375 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:17 GMT)" (scheduled at 2025-09-26 08:38:47.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:38:47,376 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 38, 47, 375840), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:38:47,383 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:38:47,383 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:38:47,383 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:17 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:38:48,199 [247] [DEBUG] [app] Starting request: urn:request:49c5ec13-96da-4cbe-9bf6-b4a3d754b9db (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:38:48,203 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:38:48,205 [251] [DEBUG] [app] Starting request: urn:request:46ecb889-fede-4335-a5e5-b9e8054637da (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:38:48,205 [251] [DEBUG] [app] Ending request: urn:request:46ecb889-fede-4335-a5e5-b9e8054637da (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:46ecb889-fede-4335-a5e5-b9e8054637da', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:38:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-registry stdout | 2025-09-26 08:38:48,206 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:38:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:38:48,206 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:38:48,207 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:38:48,208 [247] [DEBUG] [app] Starting request: urn:request:487f56f5-0f7e-4126-9449-3422706ec9e8 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:38:48,209 [247] [DEBUG] [app] Ending request: urn:request:487f56f5-0f7e-4126-9449-3422706ec9e8 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:487f56f5-0f7e-4126-9449-3422706ec9e8', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:38:48,209 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:38:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:38:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:38:48,209 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:38:48,210 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:38:48,210 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:38:48,210 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:38:48,215 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:38:48,215 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:38:48,219 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:38:48,220 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:38:48,220 [247] [DEBUG] [app] Ending request: urn:request:49c5ec13-96da-4cbe-9bf6-b4a3d754b9db (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:49c5ec13-96da-4cbe-9bf6-b4a3d754b9db', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:38:48,221 [247] [DEBUG] [data.database] Disconnecting from database. nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:38:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.023 118 0.023) gunicorn-web stdout | 2025-09-26 08:38:48,221 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:38:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" gunicorn-web stdout | 2025-09-26 08:38:48,262 [247] [DEBUG] [app] Starting request: urn:request:cc7fc9db-dab2-4ee0-80ad-5144462bf9db (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:38:48,264 [258] [DEBUG] [app] Starting request: urn:request:516658ec-24ec-4586-b971-afc6cc53d979 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:38:48,265 [258] [DEBUG] [app] Ending request: urn:request:516658ec-24ec-4586-b971-afc6cc53d979 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:516658ec-24ec-4586-b971-afc6cc53d979', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:38:48,265 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:38:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:38:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:38:48,265 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:38:48,267 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:38:48,268 [250] [DEBUG] [app] Starting request: urn:request:60e0d29b-5c0a-4259-a1ea-f1868ce6556d (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:38:48,268 [250] [DEBUG] [app] Ending request: urn:request:60e0d29b-5c0a-4259-a1ea-f1868ce6556d (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:60e0d29b-5c0a-4259-a1ea-f1868ce6556d', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:38:48,269 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:38:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:38:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.002) gunicorn-web stdout | 2025-09-26 08:38:48,269 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:38:48,269 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:38:48,269 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:38:48,270 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:38:48,274 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:38:48,274 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:38:48,278 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:38:48,279 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:38:48,280 [247] [DEBUG] [app] Ending request: urn:request:cc7fc9db-dab2-4ee0-80ad-5144462bf9db (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:cc7fc9db-dab2-4ee0-80ad-5144462bf9db', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:38:48,280 [247] [DEBUG] [data.database] Disconnecting from database. nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:38:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.020 118 0.020) gunicorn-web stdout | 2025-09-26 08:38:48,281 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:38:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" securityworker stdout | 2025-09-26 08:38:48,800 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} notificationworker stdout | 2025-09-26 08:38:50,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:38:50,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:00.692901+00:00 (in 9.999533 seconds) notificationworker stdout | 2025-09-26 08:38:50,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:00 GMT)" (scheduled at 2025-09-26 08:38:50.692901+00:00) notificationworker stdout | 2025-09-26 08:38:50,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:38:50,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 38, 50, 693622), True, datetime.datetime(2025, 9, 26, 8, 38, 50, 693622), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:38:50,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:38:50,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:38:50,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:00 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:38:50,885 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:38:50,886 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:38:52.886914+00:00 (in 2.000886 seconds) exportactionlogsworker stdout | 2025-09-26 08:38:50,886 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:50 GMT)" (scheduled at 2025-09-26 08:38:50.885619+00:00) exportactionlogsworker stdout | 2025-09-26 08:38:50,886 [56] [DEBUG] [workers.queueworker] Getting work item from queue. exportactionlogsworker stdout | 2025-09-26 08:38:50,886 [56] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 38, 50, 886360), True, datetime.datetime(2025, 9, 26, 8, 38, 50, 886360), 0, 'exportactionlogs/%', 50, 1, 0]) exportactionlogsworker stdout | 2025-09-26 08:38:50,892 [56] [DEBUG] [workers.queueworker] No more work. exportactionlogsworker stdout | 2025-09-26 08:38:50,892 [56] [DEBUG] [data.database] Disconnecting from database. exportactionlogsworker stdout | 2025-09-26 08:38:50,892 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:50 GMT)" executed successfully blobuploadcleanupworker stdout | 2025-09-26 08:38:52,127 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} proxycacheblobworker stdout | 2025-09-26 08:38:52,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:38:52,478 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:02.477454+00:00 (in 9.999459 seconds) proxycacheblobworker stdout | 2025-09-26 08:38:52,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:02 GMT)" (scheduled at 2025-09-26 08:38:52.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:38:52,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:38:52,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 38, 52, 478459), True, datetime.datetime(2025, 9, 26, 8, 38, 52, 478459), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:38:52,488 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:38:52,488 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:38:52,488 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:02 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:38:52,887 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:38:52,887 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:09.886563+00:00 (in 16.999159 seconds) exportactionlogsworker stdout | 2025-09-26 08:38:52,887 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:52 GMT)" (scheduled at 2025-09-26 08:38:52.886914+00:00) exportactionlogsworker stdout | 2025-09-26 08:38:52,887 [56] [DEBUG] [workers.queueworker] Running watchdog. exportactionlogsworker stdout | 2025-09-26 08:38:52,887 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:52 GMT)" executed successfully globalpromstats stdout | 2025-09-26 08:38:55,191 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} proxycacheblobworker stdout | 2025-09-26 08:38:55,904 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} notificationworker stdout | 2025-09-26 08:38:56,996 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} gcworker stdout | 2025-09-26 08:38:57,083 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:38:57,083 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:07.085344+00:00 (in 10.001580 seconds) gcworker stdout | 2025-09-26 08:38:57,084 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:27 GMT)" (scheduled at 2025-09-26 08:38:57.083344+00:00) gcworker stdout | 2025-09-26 08:38:57,084 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:38:57,084 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:27 GMT)" executed successfully repositoryactioncounter stdout | 2025-09-26 08:38:57,095 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} exportactionlogsworker stdout | 2025-09-26 08:38:57,275 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} manifestsubjectbackfillworker stdout | 2025-09-26 08:38:57,806 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} namespacegcworker stdout | 2025-09-26 08:38:59,791 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:38:59,791 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:08.793810+00:00 (in 9.002246 seconds) namespacegcworker stdout | 2025-09-26 08:38:59,791 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:59 GMT)" (scheduled at 2025-09-26 08:38:59.791127+00:00) namespacegcworker stdout | 2025-09-26 08:38:59,791 [66] [DEBUG] [workers.queueworker] Getting work item from queue. namespacegcworker stdout | 2025-09-26 08:38:59,792 [66] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 38, 59, 791858), True, datetime.datetime(2025, 9, 26, 8, 38, 59, 791858), 0, 'namespacegc/%', 50, 1, 0]) namespacegcworker stdout | 2025-09-26 08:38:59,799 [66] [DEBUG] [workers.queueworker] No more work. namespacegcworker stdout | 2025-09-26 08:38:59,799 [66] [DEBUG] [data.database] Disconnecting from database. namespacegcworker stdout | 2025-09-26 08:38:59,799 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:39:59 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:39:00,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:39:00,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:10.692901+00:00 (in 9.999244 seconds) notificationworker stdout | 2025-09-26 08:39:00,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:10 GMT)" (scheduled at 2025-09-26 08:39:00.692901+00:00) notificationworker stdout | 2025-09-26 08:39:00,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:39:00,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 39, 0, 693969), True, datetime.datetime(2025, 9, 26, 8, 39, 0, 693969), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:39:00,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:39:00,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:39:00,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:10 GMT)" executed successfully proxycacheblobworker stdout | 2025-09-26 08:39:02,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:39:02,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:12.477454+00:00 (in 9.999496 seconds) proxycacheblobworker stdout | 2025-09-26 08:39:02,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:12 GMT)" (scheduled at 2025-09-26 08:39:02.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:39:02,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:39:02,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 39, 2, 478337), True, datetime.datetime(2025, 9, 26, 8, 39, 2, 478337), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:39:02,487 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:39:02,487 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:39:02,488 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:12 GMT)" executed successfully storagereplication stdout | 2025-09-26 08:39:02,612 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} namespacegcworker stdout | 2025-09-26 08:39:03,003 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-web stdout | 2025-09-26 08:39:03,200 [249] [DEBUG] [app] Starting request: urn:request:e61fe9c6-5e6e-45d8-a8fb-83f0c6304a6a (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:39:03,201 [249] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:39:03,203 [251] [DEBUG] [app] Starting request: urn:request:58e3cd0e-3f2c-4eac-8bb8-700bebabdd6d (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:39:03,203 [251] [DEBUG] [app] Ending request: urn:request:58e3cd0e-3f2c-4eac-8bb8-700bebabdd6d (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:58e3cd0e-3f2c-4eac-8bb8-700bebabdd6d', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:39:03,204 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:39:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:39:03,204 [249] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:39:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:39:03,205 [249] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:39:03,206 [247] [DEBUG] [app] Starting request: urn:request:37f427f2-ee7d-4e26-8e20-1fb45ae5c0c8 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:39:03,206 [247] [DEBUG] [app] Ending request: urn:request:37f427f2-ee7d-4e26-8e20-1fb45ae5c0c8 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:37f427f2-ee7d-4e26-8e20-1fb45ae5c0c8', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:39:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:39:03,207 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:39:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:39:03,207 [249] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:39:03,207 [249] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:39:03,207 [249] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:39:03,207 [249] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:39:03,211 [249] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:39:03,212 [249] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:39:03,216 [249] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:39:03,217 [249] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:39:03,217 [249] [DEBUG] [app] Ending request: urn:request:e61fe9c6-5e6e-45d8-a8fb-83f0c6304a6a (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:e61fe9c6-5e6e-45d8-a8fb-83f0c6304a6a', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:39:03,218 [249] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:39:03,218 [249] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:39:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:39:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.019 118 0.019) gunicorn-web stdout | 2025-09-26 08:39:03,261 [247] [DEBUG] [app] Starting request: urn:request:85832b23-1bfa-4a7e-9be9-8df4b6ea6e4f (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:39:03,263 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:39:03,264 [251] [DEBUG] [app] Starting request: urn:request:c63a79d4-c1c1-41c2-9ef3-f76c55eb4f55 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:39:03,265 [251] [DEBUG] [app] Ending request: urn:request:c63a79d4-c1c1-41c2-9ef3-f76c55eb4f55 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:c63a79d4-c1c1-41c2-9ef3-f76c55eb4f55', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:39:03,265 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:39:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:39:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:39:03,265 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:39:03,266 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:39:03,267 [247] [DEBUG] [app] Starting request: urn:request:467d6d28-6be7-4655-8e81-03ded3b3eb69 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:39:03,268 [247] [DEBUG] [app] Ending request: urn:request:467d6d28-6be7-4655-8e81-03ded3b3eb69 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:467d6d28-6be7-4655-8e81-03ded3b3eb69', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:39:03,268 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:39:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:39:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:39:03,269 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:39:03,269 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:39:03,269 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:39:03,269 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:39:03,273 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:39:03,273 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:39:03,278 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:39:03,279 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:39:03,280 [247] [DEBUG] [app] Ending request: urn:request:85832b23-1bfa-4a7e-9be9-8df4b6ea6e4f (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:85832b23-1bfa-4a7e-9be9-8df4b6ea6e4f', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:39:03,280 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:39:03,280 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:39:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:39:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.020 118 0.020) autopruneworker stdout | 2025-09-26 08:39:04,394 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} expiredappspecifictokenworker stdout | 2025-09-26 08:39:04,479 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} manifestbackfillworker stdout | 2025-09-26 08:39:04,703 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} builder stdout | 2025-09-26 08:39:05,082 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} logrotateworker stdout | 2025-09-26 08:39:06,399 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gcworker stdout | 2025-09-26 08:39:07,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:39:07,085 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:27.083344+00:00 (in 19.997590 seconds) gcworker stdout | 2025-09-26 08:39:07,085 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:37 GMT)" (scheduled at 2025-09-26 08:39:07.085344+00:00) gcworker stdout | 2025-09-26 08:39:07,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gcworker stdout | 2025-09-26 08:39:07,092 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875647091, None, 1, 0]) gcworker stdout | 2025-09-26 08:39:07,093 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:39:07,093 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:37 GMT)" executed successfully securityworker stdout | 2025-09-26 08:39:07,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:39:07,683 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:11.684816+00:00 (in 4.000846 seconds) securityworker stdout | 2025-09-26 08:39:07,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:37 GMT)" (scheduled at 2025-09-26 08:39:07.683505+00:00) securityworker stdout | 2025-09-26 08:39:07,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:39:07,685 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:39:07,687 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:39:07,688 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:39:07,695 [86] [DEBUG] [peewee] ('SELECT Min("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:39:07,695 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:39:07,695 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:39:07,695 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:39:07,695 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:39:07,696 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 7, 15]) securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 7-15 by worker securityworker stdout | 2025-09-26 08:39:07,698 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 7-15 by worker securityworker stdout | 2025-09-26 08:39:07,698 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 7-15 securityworker stdout | 2025-09-26 08:39:07,698 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 7-15 securityworker stdout | 2025-09-26 08:39:07,698 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:39:07,698 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:39:07,698 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:39:07,698 [86] [DEBUG] [util.migrate.allocator] Right range 7-15 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 7-15 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 7-15 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Right range 7-15 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-7 securityworker stdout | 2025-09-26 08:39:07,698 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-7 securityworker stdout | 2025-09-26 08:39:07,698 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:39:07,699 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 9]) securityworker stdout | 2025-09-26 08:39:07,699 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stdout | 2025-09-26 08:39:07,699 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stdout | 2025-09-26 08:39:07,699 [86] [DEBUG] [util.migrate.allocator] Merging with block 7-15 securityworker stdout | 2025-09-26 08:39:07,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 15 securityworker stdout | 2025-09-26 08:39:07,700 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:39:07,700 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 7-15 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 15 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 15-36 securityworker stdout | 2025-09-26 08:39:07,700 [86] [DEBUG] [util.migrate.allocator] Total range: 15-36 securityworker stdout | 2025-09-26 08:39:07,700 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:39:07,700 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 15-36 securityworker stdout | 2025-09-26 08:39:07,700 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 15-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:39:07,700 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 20, 28]) securityworker stdout | 2025-09-26 08:39:07,701 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 20-28 by worker securityworker stdout | 2025-09-26 08:39:07,701 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 20-28 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 20-28 by worker securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 20-28 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 20-28 securityworker stdout | 2025-09-26 08:39:07,701 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 20-28 securityworker stdout | 2025-09-26 08:39:07,701 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:39:07,701 [86] [DEBUG] [util.migrate.allocator] Total range: 15-36 securityworker stdout | 2025-09-26 08:39:07,701 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:39:07,701 [86] [DEBUG] [util.migrate.allocator] Right range 20-28 securityworker stdout | 2025-09-26 08:39:07,701 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 15-20 securityworker stdout | 2025-09-26 08:39:07,701 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 15 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 15-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Right range 20-28 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 15-20 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 15 securityworker stdout | 2025-09-26 08:39:07,702 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 15, 23]) securityworker stdout | 2025-09-26 08:39:07,702 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 15-23 by worker securityworker stdout | 2025-09-26 08:39:07,702 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 15-23 securityworker stdout | 2025-09-26 08:39:07,702 [86] [DEBUG] [util.migrate.allocator] Merging with block 20-28 securityworker stdout | 2025-09-26 08:39:07,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 28 securityworker stdout | 2025-09-26 08:39:07,702 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:39:07,702 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:39:07,702 [86] [DEBUG] [util.migrate.allocator] Total range: 28-36 securityworker stdout | 2025-09-26 08:39:07,702 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:39:07,702 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 28-36 securityworker stdout | 2025-09-26 08:39:07,702 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 15-23 by worker securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 15-23 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 20-28 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 28 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 28-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 28-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:39:07,703 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 28, 36]) securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 28-36 by worker securityworker stdout | 2025-09-26 08:39:07,703 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 28-36 by worker securityworker stdout | 2025-09-26 08:39:07,703 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 28-36 securityworker stdout | 2025-09-26 08:39:07,704 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 28 securityworker stdout | 2025-09-26 08:39:07,704 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:39:07,704 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:39:07,704 [86] [DEBUG] [util.migrate.allocator] Total range: 36-28 securityworker stdout | 2025-09-26 08:39:07,704 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:39:07,704 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 28-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 28 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 36-28 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:39:07,704 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:39:07,704 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:39:07,704 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:39:07,704 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 34, 7, 688540), 3, 11]) securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 3-11 by worker securityworker stdout | 2025-09-26 08:39:07,705 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 3-11 by worker securityworker stdout | 2025-09-26 08:39:07,705 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 3-11 securityworker stdout | 2025-09-26 08:39:07,705 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 3-11 securityworker stdout | 2025-09-26 08:39:07,705 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:39:07,705 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:39:07,705 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stdout | 2025-09-26 08:39:07,705 [86] [DEBUG] [util.migrate.allocator] Left range 3-11 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 3-11 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 3-11 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Left range 3-11 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 11-36 securityworker stdout | 2025-09-26 08:39:07,705 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 11-36 securityworker stdout | 2025-09-26 08:39:07,705 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:39:07,706 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 34, 7, 688540), 13, 21]) securityworker stdout | 2025-09-26 08:39:07,706 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 13-21 by worker securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 13-21 by worker securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 13-21 securityworker stdout | 2025-09-26 08:39:07,706 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 13-21 securityworker stdout | 2025-09-26 08:39:07,707 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 13-21 securityworker stdout | 2025-09-26 08:39:07,707 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stdout | 2025-09-26 08:39:07,707 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:39:07,707 [86] [DEBUG] [util.migrate.allocator] Selected random hole 2 with 3 total holes securityworker stdout | 2025-09-26 08:39:07,707 [86] [DEBUG] [util.migrate.allocator] Left range 3-11 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 13-21 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 2 with 3 total holes securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Left range 3-11 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Right range 13-21 securityworker stdout | 2025-09-26 08:39:07,707 [86] [DEBUG] [util.migrate.allocator] Right range 13-21 securityworker stdout | 2025-09-26 08:39:07,707 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 11-13 securityworker stdout | 2025-09-26 08:39:07,707 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 11 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 11-13 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 11 securityworker stdout | 2025-09-26 08:39:07,707 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 34, 7, 688540), 11, 19]) securityworker stdout | 2025-09-26 08:39:07,708 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 11-19 by worker securityworker stdout | 2025-09-26 08:39:07,708 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 11-19 securityworker stdout | 2025-09-26 08:39:07,708 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 3-11 securityworker stdout | 2025-09-26 08:39:07,708 [86] [DEBUG] [util.migrate.allocator] Already merged with block 3-11 securityworker stdout | 2025-09-26 08:39:07,708 [86] [DEBUG] [util.migrate.allocator] Merging with block 13-21 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 11-19 by worker securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 11-19 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 3-11 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Already merged with block 3-11 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 13-21 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Discarding 2 obsolete blocks securityworker stdout | 2025-09-26 08:39:07,708 [86] [DEBUG] [util.migrate.allocator] Discarding 2 obsolete blocks securityworker stdout | 2025-09-26 08:39:07,708 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 3-21 securityworker stdout | 2025-09-26 08:39:07,708 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:39:07,708 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:39:07,708 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 3-21 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:39:07,708 [86] [DEBUG] [util.migrate.allocator] Right range 3-21 securityworker stdout | 2025-09-26 08:39:07,709 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-3 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Right range 3-21 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-3 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:39:07,709 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:39:07,710 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 34, 7, 688540), 1, 9]) securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stdout | 2025-09-26 08:39:07,711 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stdout | 2025-09-26 08:39:07,711 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stdout | 2025-09-26 08:39:07,711 [86] [DEBUG] [util.migrate.allocator] Merging with block 3-21 securityworker stdout | 2025-09-26 08:39:07,711 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 21 securityworker stdout | 2025-09-26 08:39:07,711 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:39:07,711 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:39:07,711 [86] [DEBUG] [util.migrate.allocator] Total range: 21-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 3-21 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 21 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 21-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:39:07,711 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:39:07,711 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 21-36 securityworker stdout | 2025-09-26 08:39:07,711 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 21-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:39:07,712 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 34, 7, 688540), 23, 31]) securityworker stdout | 2025-09-26 08:39:07,712 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 23-31 by worker securityworker stdout | 2025-09-26 08:39:07,712 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 23-31 securityworker stdout | 2025-09-26 08:39:07,712 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 23-31 securityworker stdout | 2025-09-26 08:39:07,712 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:39:07,712 [86] [DEBUG] [util.migrate.allocator] Total range: 21-36 securityworker stdout | 2025-09-26 08:39:07,712 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 23-31 by worker securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 23-31 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 23-31 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 21-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:39:07,712 [86] [DEBUG] [util.migrate.allocator] Right range 23-31 securityworker stdout | 2025-09-26 08:39:07,712 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 21-23 securityworker stdout | 2025-09-26 08:39:07,713 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 21 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Right range 23-31 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 21-23 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 21 securityworker stdout | 2025-09-26 08:39:07,713 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 34, 7, 688540), 21, 29]) securityworker stdout | 2025-09-26 08:39:07,714 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 21-29 by worker securityworker stdout | 2025-09-26 08:39:07,714 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 21-29 securityworker stdout | 2025-09-26 08:39:07,714 [86] [DEBUG] [util.migrate.allocator] Merging with block 23-31 securityworker stdout | 2025-09-26 08:39:07,714 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 31 securityworker stdout | 2025-09-26 08:39:07,714 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:39:07,714 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 21-29 by worker securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 21-29 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 23-31 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 31 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 31-36 securityworker stdout | 2025-09-26 08:39:07,714 [86] [DEBUG] [util.migrate.allocator] Total range: 31-36 securityworker stdout | 2025-09-26 08:39:07,714 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:39:07,714 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 31-36 securityworker stdout | 2025-09-26 08:39:07,714 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 31 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 31-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 31 securityworker stdout | 2025-09-26 08:39:07,715 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 34, 7, 688540), 31, 36]) securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 31-36 by worker securityworker stdout | 2025-09-26 08:39:07,715 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 31-36 by worker securityworker stdout | 2025-09-26 08:39:07,715 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 31-36 securityworker stdout | 2025-09-26 08:39:07,715 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 31 securityworker stdout | 2025-09-26 08:39:07,715 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:39:07,715 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:39:07,715 [86] [DEBUG] [util.migrate.allocator] Total range: 36-31 securityworker stdout | 2025-09-26 08:39:07,715 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:39:07,715 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 31-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 31 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 36-31 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:39:07,715 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:39:07,715 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:39:07,715 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:39:07,716 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 34, 7, 688540), 18, 26]) securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 18-26 by worker securityworker stdout | 2025-09-26 08:39:07,717 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 18-26 by worker securityworker stdout | 2025-09-26 08:39:07,717 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 18-26 securityworker stdout | 2025-09-26 08:39:07,717 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 18-26 securityworker stdout | 2025-09-26 08:39:07,717 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:39:07,717 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:39:07,717 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:39:07,717 [86] [DEBUG] [util.migrate.allocator] Right range 18-26 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 18-26 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 18-26 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Right range 18-26 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-18 securityworker stdout | 2025-09-26 08:39:07,717 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-18 securityworker stdout | 2025-09-26 08:39:07,717 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 10 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 10 securityworker stdout | 2025-09-26 08:39:07,718 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 34, 7, 688540), 4, 12]) securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 4-12 by worker securityworker stdout | 2025-09-26 08:39:07,719 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 4-12 by worker securityworker stdout | 2025-09-26 08:39:07,719 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 4-12 securityworker stdout | 2025-09-26 08:39:07,719 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 4-12 securityworker stdout | 2025-09-26 08:39:07,719 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stdout | 2025-09-26 08:39:07,719 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:39:07,719 [86] [DEBUG] [util.migrate.allocator] Selected random hole 2 with 3 total holes securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 4-12 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 4-12 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 2 with 3 total holes securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Left range 4-12 securityworker stdout | 2025-09-26 08:39:07,719 [86] [DEBUG] [util.migrate.allocator] Left range 4-12 securityworker stdout | 2025-09-26 08:39:07,719 [86] [DEBUG] [util.migrate.allocator] Right range 18-26 securityworker stdout | 2025-09-26 08:39:07,719 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 12-18 securityworker stdout | 2025-09-26 08:39:07,719 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 12 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Right range 18-26 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 12-18 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 12 securityworker stdout | 2025-09-26 08:39:07,720 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 34, 7, 688540), 12, 20]) securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 12-20 by worker securityworker stdout | 2025-09-26 08:39:07,720 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 12-20 by worker securityworker stdout | 2025-09-26 08:39:07,721 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 12-20 securityworker stdout | 2025-09-26 08:39:07,721 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 4-12 securityworker stdout | 2025-09-26 08:39:07,721 [86] [DEBUG] [util.migrate.allocator] Already merged with block 4-12 securityworker stdout | 2025-09-26 08:39:07,721 [86] [DEBUG] [util.migrate.allocator] Merging with block 18-26 securityworker stdout | 2025-09-26 08:39:07,721 [86] [DEBUG] [util.migrate.allocator] Discarding 2 obsolete blocks securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 12-20 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 4-12 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Already merged with block 4-12 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 18-26 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Discarding 2 obsolete blocks securityworker stdout | 2025-09-26 08:39:07,721 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 4-26 securityworker stdout | 2025-09-26 08:39:07,721 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:39:07,721 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:39:07,721 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:39:07,721 [86] [DEBUG] [util.migrate.allocator] Right range 4-26 securityworker stdout | 2025-09-26 08:39:07,721 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-4 securityworker stdout | 2025-09-26 08:39:07,721 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 4-26 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Right range 4-26 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-4 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:39:07,722 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 34, 7, 688540), 1, 9]) securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stdout | 2025-09-26 08:39:07,723 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stdout | 2025-09-26 08:39:07,723 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stdout | 2025-09-26 08:39:07,723 [86] [DEBUG] [util.migrate.allocator] Merging with block 4-26 securityworker stdout | 2025-09-26 08:39:07,723 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 26 securityworker stdout | 2025-09-26 08:39:07,723 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:39:07,723 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:39:07,723 [86] [DEBUG] [util.migrate.allocator] Total range: 26-36 securityworker stdout | 2025-09-26 08:39:07,723 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 4-26 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 26 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 26-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 26-36 securityworker stdout | 2025-09-26 08:39:07,723 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 26-36 securityworker stdout | 2025-09-26 08:39:07,723 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:39:07,723 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 34, 7, 688540), 26, 34]) securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 26-34 by worker securityworker stdout | 2025-09-26 08:39:07,724 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 26-34 by worker securityworker stdout | 2025-09-26 08:39:07,725 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 26-34 securityworker stdout | 2025-09-26 08:39:07,725 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 34 securityworker stdout | 2025-09-26 08:39:07,725 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:39:07,725 [86] [DEBUG] [util.migrate.allocator] Total range: 34-36 securityworker stdout | 2025-09-26 08:39:07,725 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:39:07,725 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 34-36 securityworker stdout | 2025-09-26 08:39:07,725 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 34 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 26-34 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 34 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 34-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 34-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 34 securityworker stdout | 2025-09-26 08:39:07,725 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 34, 7, 688540), 34, 36]) securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 34-36 by worker securityworker stdout | 2025-09-26 08:39:07,726 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 34-36 by worker securityworker stdout | 2025-09-26 08:39:07,726 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 34-36 securityworker stdout | 2025-09-26 08:39:07,726 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 34 securityworker stdout | 2025-09-26 08:39:07,726 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:39:07,726 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:39:07,726 [86] [DEBUG] [util.migrate.allocator] Total range: 36-34 securityworker stdout | 2025-09-26 08:39:07,726 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 34-36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 34 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] Total range: 36-34 securityworker stderr | 2025-09-26 08:39:07 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:39:07,726 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:39:07,726 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:37 GMT)" executed successfully namespacegcworker stdout | 2025-09-26 08:39:08,794 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:39:08,794 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:59.791127+00:00 (in 50.996885 seconds) namespacegcworker stdout | 2025-09-26 08:39:08,794 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:08 GMT)" (scheduled at 2025-09-26 08:39:08.793810+00:00) namespacegcworker stdout | 2025-09-26 08:39:08,794 [66] [DEBUG] [workers.queueworker] Running watchdog. namespacegcworker stdout | 2025-09-26 08:39:08,794 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:08 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:39:09,749 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:39:09,755 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:39:09,778 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:39:09,791 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:39:09,804 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gcworker stdout | 2025-09-26 08:39:09,878 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} exportactionlogsworker stdout | 2025-09-26 08:39:09,886 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:39:09,887 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:50.885619+00:00 (in 40.997997 seconds) exportactionlogsworker stdout | 2025-09-26 08:39:09,887 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:44:09 GMT)" (scheduled at 2025-09-26 08:39:09.886563+00:00) exportactionlogsworker stdout | 2025-09-26 08:39:09,888 [56] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [False, datetime.datetime(2025, 9, 26, 8, 39, 9, 887937), 'exportactionlogs/%']) exportactionlogsworker stdout | 2025-09-26 08:39:09,895 [56] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 39, 9, 887937), True, datetime.datetime(2025, 9, 26, 8, 39, 9, 887937), 0, 'exportactionlogs/%']) exportactionlogsworker stdout | 2025-09-26 08:39:09,897 [56] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) AND NOT ("t1"."queue_name" IN (SELECT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s)))))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 39, 9, 887937), True, datetime.datetime(2025, 9, 26, 8, 39, 9, 887937), 0, 'exportactionlogs/%', False, datetime.datetime(2025, 9, 26, 8, 39, 9, 887937), 'exportactionlogs/%']) exportactionlogsworker stdout | 2025-09-26 08:39:09,898 [56] [DEBUG] [data.database] Disconnecting from database. exportactionlogsworker stdout | 2025-09-26 08:39:09,898 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:44:09 GMT)" executed successfully securityscanningnotificationworker stdout | 2025-09-26 08:39:10,069 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} queuecleanupworker stdout | 2025-09-26 08:39:10,298 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} gunicorn-secscan stdout | 2025-09-26 08:39:10,470 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} gunicorn-secscan stdout | 2025-09-26 08:39:10,476 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:39:10,480 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} securityscanningnotificationworker stdout | 2025-09-26 08:39:10,584 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:39:10,584 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:28.587130+00:00 (in 18.002234 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:39:10,585 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:10 GMT)" (scheduled at 2025-09-26 08:39:10.584403+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:39:10,585 [82] [DEBUG] [workers.queueworker] Getting work item from queue. securityscanningnotificationworker stdout | 2025-09-26 08:39:10,586 [82] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 39, 10, 585526), True, datetime.datetime(2025, 9, 26, 8, 39, 10, 585526), 0, 'secscanv4/%', 50, 1, 0]) securityscanningnotificationworker stdout | 2025-09-26 08:39:10,593 [82] [DEBUG] [workers.queueworker] No more work. securityscanningnotificationworker stdout | 2025-09-26 08:39:10,594 [82] [DEBUG] [data.database] Disconnecting from database. securityscanningnotificationworker stdout | 2025-09-26 08:39:10,594 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:10 GMT)" executed successfully autopruneworker stdout | 2025-09-26 08:39:10,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:39:10,598 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:40.598100+00:00 (in 29.999361 seconds) autopruneworker stdout | 2025-09-26 08:39:10,598 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:40 GMT)" (scheduled at 2025-09-26 08:39:10.598100+00:00) autopruneworker stdout | 2025-09-26 08:39:10,603 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758872350602, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:39:10,606 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:39:10,606 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:39:10,606 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:40 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:39:10,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:39:10,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:20.692901+00:00 (in 9.999141 seconds) notificationworker stdout | 2025-09-26 08:39:10,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:20 GMT)" (scheduled at 2025-09-26 08:39:10.692901+00:00) notificationworker stdout | 2025-09-26 08:39:10,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:39:10,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 39, 10, 694035), True, datetime.datetime(2025, 9, 26, 8, 39, 10, 694035), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:39:10,702 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:39:10,702 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:39:10,702 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:20 GMT)" executed successfully chunkcleanupworker stdout | 2025-09-26 08:39:11,108 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} securityworker stdout | 2025-09-26 08:39:11,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:39:11,685 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:37.683505+00:00 (in 25.998209 seconds) securityworker stdout | 2025-09-26 08:39:11,685 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:41 GMT)" (scheduled at 2025-09-26 08:39:11.684816+00:00) securityworker stdout | 2025-09-26 08:39:11,686 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:39:11,686 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:39:11,688 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:39:11,690 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:39:11,698 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:39:11,698 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:39:11,698 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:39:11,698 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:39:11,699 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 36]) securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:39:11,701 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:39:11,701 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:39:11,701 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:39:11,701 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:39:11,701 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:39:11,701 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:39:11,701 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:39:11,701 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:39:11,701 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:39:11,701 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:39:11,701 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:39:11,702 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 34, 11, 690760), 1, 36]) securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:39:11,703 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:39:11,703 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:39:11,703 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:39:11,703 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:39:11,703 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:39:11,703 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:39:11,703 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:39:11,703 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:39:11,703 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:39:11,703 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:39:11,703 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:39:11,704 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 34, 11, 690760), 1, 36]) securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:39:11,705 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:39:11,705 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:39:11,705 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:39:11,705 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:39:11,705 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:39:11,705 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:39:11,705 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:39:11,705 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:39:11,705 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:41 GMT)" executed successfully securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:39:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker repositorygcworker stdout | 2025-09-26 08:39:12,090 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} proxycacheblobworker stdout | 2025-09-26 08:39:12,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:39:12,478 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:22.477454+00:00 (in 9.999185 seconds) proxycacheblobworker stdout | 2025-09-26 08:39:12,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:22 GMT)" (scheduled at 2025-09-26 08:39:12.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:39:12,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:39:12,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 39, 12, 478702), True, datetime.datetime(2025, 9, 26, 8, 39, 12, 478702), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:39:12,487 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:39:12,487 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:39:12,487 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:22 GMT)" executed successfully servicekey stdout | 2025-09-26 08:39:12,722 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:39:12,783 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} gunicorn-registry stdout | 2025-09-26 08:39:14,295 [253] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '253'} gunicorn-registry stdout | 2025-09-26 08:39:14,304 [59] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '59'} gunicorn-registry stdout | 2025-09-26 08:39:14,320 [257] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '257'} gunicorn-registry stdout | 2025-09-26 08:39:14,348 [255] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '255'} gunicorn-registry stdout | 2025-09-26 08:39:14,361 [258] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '258'} gunicorn-registry stdout | 2025-09-26 08:39:14,372 [252] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '252'} gunicorn-registry stdout | 2025-09-26 08:39:14,378 [256] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '256'} gunicorn-registry stdout | 2025-09-26 08:39:14,382 [254] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '254'} gunicorn-registry stdout | 2025-09-26 08:39:14,386 [251] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '251'} buildlogsarchiver stdout | 2025-09-26 08:39:15,612 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} buildlogsarchiver stdout | 2025-09-26 08:39:17,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:39:17,375 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:47.375102+00:00 (in 29.999545 seconds) buildlogsarchiver stdout | 2025-09-26 08:39:17,375 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:47 GMT)" (scheduled at 2025-09-26 08:39:17.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:39:17,376 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 39, 17, 376050), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:39:17,383 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:39:17,383 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:39:17,383 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:47 GMT)" executed successfully manifestsubjectbackfillworker stdout | 2025-09-26 08:39:17,985 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:39:17,986 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:33.984400+00:00 (in 15.998194 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:39:17,986 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:17 GMT)" (scheduled at 2025-09-26 08:39:17.985743+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:39:17,987 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."artifact_type_backfilled" = %s) OR ("t1"."artifact_type_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:39:17,993 [64] [DEBUG] [__main__] Manifest artifact_type backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:39:17,993 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:39:17,993 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:17 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:39:18,200 [247] [DEBUG] [app] Starting request: urn:request:9e76e625-10a6-4b2d-a174-9bb8e9156b5c (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:39:18,202 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:39:18,204 [251] [DEBUG] [app] Starting request: urn:request:0a68c7b3-1ec7-43eb-8498-eb6c1236101e (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:39:18,204 [251] [DEBUG] [app] Ending request: urn:request:0a68c7b3-1ec7-43eb-8498-eb6c1236101e (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:0a68c7b3-1ec7-43eb-8498-eb6c1236101e', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:39:18,205 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:39:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:39:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:39:18,205 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:39:18,206 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:39:18,207 [249] [DEBUG] [app] Starting request: urn:request:c40dfb19-e348-409c-b28b-b0cc56af6c46 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:39:18,207 [249] [DEBUG] [app] Ending request: urn:request:c40dfb19-e348-409c-b28b-b0cc56af6c46 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:c40dfb19-e348-409c-b28b-b0cc56af6c46', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:39:18,208 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:39:18 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:39:18 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.002) gunicorn-web stdout | 2025-09-26 08:39:18,208 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:39:18,208 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:39:18,208 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:39:18,208 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:39:18,212 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:39:18,213 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:39:18,217 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:39:18,219 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:39:18,219 [247] [DEBUG] [app] Ending request: urn:request:9e76e625-10a6-4b2d-a174-9bb8e9156b5c (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:9e76e625-10a6-4b2d-a174-9bb8e9156b5c', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:39:18,219 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:39:18,220 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:39:18 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:39:18 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.021 118 0.021) gunicorn-web stdout | 2025-09-26 08:39:18,262 [248] [DEBUG] [app] Starting request: urn:request:0e73cf8f-ae1b-4caa-bf20-2d9f68c2503b (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:39:18,263 [248] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:39:18,265 [251] [DEBUG] [app] Starting request: urn:request:b90dbe1f-a8c4-42b1-a4d8-09223eccb46f (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:39:18,265 [251] [DEBUG] [app] Ending request: urn:request:b90dbe1f-a8c4-42b1-a4d8-09223eccb46f (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:b90dbe1f-a8c4-42b1-a4d8-09223eccb46f', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:39:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-registry stdout | 2025-09-26 08:39:18,266 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:39:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:39:18,266 [248] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:39:18,267 [248] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:39:18,268 [247] [DEBUG] [app] Starting request: urn:request:116c172e-8f5d-43bb-a144-a83a97932ef6 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:39:18,269 [247] [DEBUG] [app] Ending request: urn:request:116c172e-8f5d-43bb-a144-a83a97932ef6 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:116c172e-8f5d-43bb-a144-a83a97932ef6', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:39:18 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.002) gunicorn-web stdout | 2025-09-26 08:39:18,269 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:39:18 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:39:18,269 [248] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:39:18,269 [248] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:39:18,269 [248] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:39:18,270 [248] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:39:18,274 [248] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:39:18,274 [248] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:39:18,278 [248] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:39:18,279 [248] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:39:18,280 [248] [DEBUG] [app] Ending request: urn:request:0e73cf8f-ae1b-4caa-bf20-2d9f68c2503b (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:0e73cf8f-ae1b-4caa-bf20-2d9f68c2503b', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:39:18,280 [248] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:39:18,280 [248] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:39:18 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:39:18 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.019 118 0.019) securityworker stdout | 2025-09-26 08:39:18,820 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} repositorygcworker stdout | 2025-09-26 08:39:19,075 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:39:19,076 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:28.077240+00:00 (in 9.001117 seconds) repositorygcworker stdout | 2025-09-26 08:39:19,076 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:19 GMT)" (scheduled at 2025-09-26 08:39:19.075668+00:00) repositorygcworker stdout | 2025-09-26 08:39:19,076 [81] [DEBUG] [workers.queueworker] Getting work item from queue. repositorygcworker stdout | 2025-09-26 08:39:19,077 [81] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 39, 19, 76444), True, datetime.datetime(2025, 9, 26, 8, 39, 19, 76444), 0, 'repositorygc/%', 50, 1, 0]) repositorygcworker stdout | 2025-09-26 08:39:19,084 [81] [DEBUG] [workers.queueworker] No more work. repositorygcworker stdout | 2025-09-26 08:39:19,084 [81] [DEBUG] [data.database] Disconnecting from database. repositorygcworker stdout | 2025-09-26 08:39:19,085 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:19 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:39:20,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:39:20,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:30.692901+00:00 (in 9.999152 seconds) notificationworker stdout | 2025-09-26 08:39:20,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:30 GMT)" (scheduled at 2025-09-26 08:39:20.692901+00:00) notificationworker stdout | 2025-09-26 08:39:20,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:39:20,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 39, 20, 694014), True, datetime.datetime(2025, 9, 26, 8, 39, 20, 694014), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:39:20,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:39:20,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:39:20,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:30 GMT)" executed successfully blobuploadcleanupworker stdout | 2025-09-26 08:39:22,146 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} proxycacheblobworker stdout | 2025-09-26 08:39:22,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:39:22,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:26.483749+00:00 (in 4.005800 seconds) proxycacheblobworker stdout | 2025-09-26 08:39:22,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:32 GMT)" (scheduled at 2025-09-26 08:39:22.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:39:22,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:39:22,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 39, 22, 478292), True, datetime.datetime(2025, 9, 26, 8, 39, 22, 478292), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:39:22,487 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:39:22,487 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:39:22,487 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:32 GMT)" executed successfully globalpromstats stdout | 2025-09-26 08:39:25,207 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} proxycacheblobworker stdout | 2025-09-26 08:39:25,919 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} proxycacheblobworker stdout | 2025-09-26 08:39:26,483 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:39:26,484 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:32.477454+00:00 (in 5.993242 seconds) proxycacheblobworker stdout | 2025-09-26 08:39:26,484 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:26 GMT)" (scheduled at 2025-09-26 08:39:26.483749+00:00) proxycacheblobworker stdout | 2025-09-26 08:39:26,484 [69] [DEBUG] [workers.queueworker] Running watchdog. proxycacheblobworker stdout | 2025-09-26 08:39:26,484 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:26 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:39:27,013 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} gcworker stdout | 2025-09-26 08:39:27,083 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:39:27,084 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:37.085344+00:00 (in 10.001067 seconds) gcworker stdout | 2025-09-26 08:39:27,084 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:57 GMT)" (scheduled at 2025-09-26 08:39:27.083344+00:00) gcworker stdout | 2025-09-26 08:39:27,084 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:39:27,084 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:39:57 GMT)" executed successfully repositoryactioncounter stdout | 2025-09-26 08:39:27,111 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} exportactionlogsworker stdout | 2025-09-26 08:39:27,292 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} manifestsubjectbackfillworker stdout | 2025-09-26 08:39:27,821 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} repositorygcworker stdout | 2025-09-26 08:39:28,077 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:39:28,077 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:45.076950+00:00 (in 16.999255 seconds) repositorygcworker stdout | 2025-09-26 08:39:28,078 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:28 GMT)" (scheduled at 2025-09-26 08:39:28.077240+00:00) repositorygcworker stdout | 2025-09-26 08:39:28,078 [81] [DEBUG] [workers.queueworker] Running watchdog. repositorygcworker stdout | 2025-09-26 08:39:28,078 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:28 GMT)" executed successfully securityscanningnotificationworker stdout | 2025-09-26 08:39:28,587 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:39:28,587 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:10.584403+00:00 (in 41.996830 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:39:28,587 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:28 GMT)" (scheduled at 2025-09-26 08:39:28.587130+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:39:28,587 [82] [DEBUG] [workers.queueworker] Running watchdog. securityscanningnotificationworker stdout | 2025-09-26 08:39:28,587 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:28 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:39:30,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:39:30,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:37.771811+00:00 (in 7.078394 seconds) notificationworker stdout | 2025-09-26 08:39:30,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:40 GMT)" (scheduled at 2025-09-26 08:39:30.692901+00:00) notificationworker stdout | 2025-09-26 08:39:30,694 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:39:30,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 39, 30, 694049), True, datetime.datetime(2025, 9, 26, 8, 39, 30, 694049), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:39:30,703 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:39:30,703 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:39:30,703 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:40 GMT)" executed successfully proxycacheblobworker stdout | 2025-09-26 08:39:32,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:39:32,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:42.477454+00:00 (in 9.999534 seconds) proxycacheblobworker stdout | 2025-09-26 08:39:32,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:42 GMT)" (scheduled at 2025-09-26 08:39:32.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:39:32,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:39:32,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 39, 32, 478319), True, datetime.datetime(2025, 9, 26, 8, 39, 32, 478319), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:39:32,487 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:39:32,487 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:39:32,487 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:42 GMT)" executed successfully storagereplication stdout | 2025-09-26 08:39:32,629 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} namespacegcworker stdout | 2025-09-26 08:39:33,019 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-web stdout | 2025-09-26 08:39:33,200 [247] [DEBUG] [app] Starting request: urn:request:fe657859-3b32-4f21-84f4-0bea76cb9b0a (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:39:33,201 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:39:33,202 [256] [DEBUG] [app] Starting request: urn:request:78461617-ae6e-4b55-afa5-b13e0edd3f7a (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:39:33,203 [256] [DEBUG] [app] Ending request: urn:request:78461617-ae6e-4b55-afa5-b13e0edd3f7a (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:78461617-ae6e-4b55-afa5-b13e0edd3f7a', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:39:33,203 [256] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:39:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:39:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.002) gunicorn-web stdout | 2025-09-26 08:39:33,203 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:39:33,204 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:39:33,205 [250] [DEBUG] [app] Starting request: urn:request:a2746f7d-8034-44c6-b355-ac2d5f1f18ea (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:39:33,206 [250] [DEBUG] [app] Ending request: urn:request:a2746f7d-8034-44c6-b355-ac2d5f1f18ea (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:a2746f7d-8034-44c6-b355-ac2d5f1f18ea', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:39:33,206 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:39:33 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:39:33,206 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:39:33 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.002) gunicorn-web stdout | 2025-09-26 08:39:33,206 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:39:33,206 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:39:33,206 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:39:33,211 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:39:33,211 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:39:33,215 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:39:33,216 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:39:33,217 [247] [DEBUG] [app] Ending request: urn:request:fe657859-3b32-4f21-84f4-0bea76cb9b0a (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:fe657859-3b32-4f21-84f4-0bea76cb9b0a', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:39:33,217 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:39:33,217 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:39:33 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:39:33 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.018 118 0.018) gunicorn-web stdout | 2025-09-26 08:39:33,261 [250] [DEBUG] [app] Starting request: urn:request:efea93c4-89e7-4260-aed0-6ab47372d7ff (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:39:33,271 [250] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:39:33,273 [251] [DEBUG] [app] Starting request: urn:request:20152ea0-17a9-4807-b376-7c5d1eb8ec2e (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:39:33,273 [251] [DEBUG] [app] Ending request: urn:request:20152ea0-17a9-4807-b376-7c5d1eb8ec2e (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:20152ea0-17a9-4807-b376-7c5d1eb8ec2e', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:39:33,274 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:39:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:39:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.001) gunicorn-web stdout | 2025-09-26 08:39:33,274 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:39:33,275 [250] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:39:33,277 [248] [DEBUG] [app] Starting request: urn:request:9ec1c264-8852-490c-bd9c-cb00fa1286e1 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:39:33,277 [248] [DEBUG] [app] Ending request: urn:request:9ec1c264-8852-490c-bd9c-cb00fa1286e1 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:9ec1c264-8852-490c-bd9c-cb00fa1286e1', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:39:33,277 [248] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:39:33 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:39:33,278 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:39:33,278 [250] [DEBUG] [data.model.health] Validating database connection. nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:39:33 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:39:33,278 [250] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:39:33,278 [250] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:39:33,283 [250] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:39:33,283 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:39:33,288 [250] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:39:33,289 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:39:33,290 [250] [DEBUG] [app] Ending request: urn:request:efea93c4-89e7-4260-aed0-6ab47372d7ff (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:efea93c4-89e7-4260-aed0-6ab47372d7ff', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:39:33,290 [250] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:39:33,291 [250] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:39:33 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:39:33 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.031 118 0.031) manifestsubjectbackfillworker stdout | 2025-09-26 08:39:33,985 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:39:33,985 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:17.985743+00:00 (in 44.000456 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:39:33,985 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:33 GMT)" (scheduled at 2025-09-26 08:39:33.984400+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:39:33,985 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."subject_backfilled" = %s) OR ("t1"."subject_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:39:33,991 [64] [DEBUG] [__main__] Manifest subject backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:39:33,991 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:39:33,992 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:33 GMT)" executed successfully autopruneworker stdout | 2025-09-26 08:39:34,410 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} expiredappspecifictokenworker stdout | 2025-09-26 08:39:34,495 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} manifestbackfillworker stdout | 2025-09-26 08:39:34,719 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} builder stdout | 2025-09-26 08:39:35,099 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} logrotateworker stdout | 2025-09-26 08:39:36,415 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gcworker stdout | 2025-09-26 08:39:37,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:39:37,085 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:57.083344+00:00 (in 19.997560 seconds) gcworker stdout | 2025-09-26 08:39:37,085 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:07 GMT)" (scheduled at 2025-09-26 08:39:37.085344+00:00) gcworker stdout | 2025-09-26 08:39:37,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gcworker stdout | 2025-09-26 08:39:37,093 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875677092, None, 1, 0]) gcworker stdout | 2025-09-26 08:39:37,094 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:39:37,094 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:07 GMT)" executed successfully securityworker stdout | 2025-09-26 08:39:37,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:39:37,683 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:41.684816+00:00 (in 4.000854 seconds) securityworker stdout | 2025-09-26 08:39:37,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:07 GMT)" (scheduled at 2025-09-26 08:39:37.683505+00:00) securityworker stdout | 2025-09-26 08:39:37,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:39:37,684 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:39:37,686 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:39:37,688 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:39:37,693 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:39:37,693 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:07 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:39:37,772 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:39:37,772 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:40.692901+00:00 (in 2.920521 seconds) notificationworker stdout | 2025-09-26 08:39:37,772 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:37 GMT)" (scheduled at 2025-09-26 08:39:37.771811+00:00) notificationworker stdout | 2025-09-26 08:39:37,772 [68] [DEBUG] [workers.queueworker] Running watchdog. notificationworker stdout | 2025-09-26 08:39:37,772 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:37 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:39:39,767 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:39:39,774 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:39:39,797 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:39:39,807 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:39:39,821 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gcworker stdout | 2025-09-26 08:39:39,894 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} securityscanningnotificationworker stdout | 2025-09-26 08:39:40,085 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} queuecleanupworker stdout | 2025-09-26 08:39:40,314 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} gunicorn-secscan stdout | 2025-09-26 08:39:40,490 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} gunicorn-secscan stdout | 2025-09-26 08:39:40,495 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:39:40,499 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} autopruneworker stdout | 2025-09-26 08:39:40,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:39:40,598 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:10.598100+00:00 (in 29.999540 seconds) autopruneworker stdout | 2025-09-26 08:39:40,598 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:10 GMT)" (scheduled at 2025-09-26 08:39:40.598100+00:00) autopruneworker stdout | 2025-09-26 08:39:40,604 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758872380603, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:39:40,606 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:39:40,607 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:39:40,607 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:10 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:39:40,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:39:40,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:50.692901+00:00 (in 9.999492 seconds) notificationworker stdout | 2025-09-26 08:39:40,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:50 GMT)" (scheduled at 2025-09-26 08:39:40.692901+00:00) notificationworker stdout | 2025-09-26 08:39:40,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:39:40,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 39, 40, 693736), True, datetime.datetime(2025, 9, 26, 8, 39, 40, 693736), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:39:40,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:39:40,702 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:39:40,702 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:50 GMT)" executed successfully chunkcleanupworker stdout | 2025-09-26 08:39:41,125 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} securityworker stdout | 2025-09-26 08:39:41,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:39:41,685 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:07.683505+00:00 (in 25.998201 seconds) securityworker stdout | 2025-09-26 08:39:41,685 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:11 GMT)" (scheduled at 2025-09-26 08:39:41.684816+00:00) securityworker stdout | 2025-09-26 08:39:41,685 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:39:41,685 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:39:41,687 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:39:41,690 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:39:41,696 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:39:41,697 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:39:41,697 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:39:41,697 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:39:41,698 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 36]) securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:39:41,700 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:39:41,700 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:39:41,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:39:41,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:39:41,700 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:39:41,700 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:39:41,700 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:39:41,700 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:39:41,700 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:39:41,700 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:39:41,700 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:39:41,702 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 34, 41, 690140), 1, 36]) securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:39:41,703 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:39:41,703 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:39:41,703 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:39:41,703 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:39:41,703 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:39:41,703 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:39:41,703 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:39:41,703 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:39:41,704 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:39:41,704 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:39:41,704 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:39:41,705 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 34, 41, 690140), 1, 36]) securityworker stdout | 2025-09-26 08:39:41,706 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:39:41,706 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:39:41,706 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:39:41,706 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:39:41,706 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:39:41,706 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:39:41,706 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:39:41,706 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:39:41,706 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:11 GMT)" executed successfully securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:39:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker repositorygcworker stdout | 2025-09-26 08:39:42,107 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} proxycacheblobworker stdout | 2025-09-26 08:39:42,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:39:42,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:52.477454+00:00 (in 9.999490 seconds) proxycacheblobworker stdout | 2025-09-26 08:39:42,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:52 GMT)" (scheduled at 2025-09-26 08:39:42.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:39:42,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:39:42,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 39, 42, 478400), True, datetime.datetime(2025, 9, 26, 8, 39, 42, 478400), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:39:42,485 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:39:42,485 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:39:42,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:39:52 GMT)" executed successfully servicekey stdout | 2025-09-26 08:39:42,738 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:39:42,799 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} gunicorn-registry stdout | 2025-09-26 08:39:44,318 [253] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '253'} gunicorn-registry stdout | 2025-09-26 08:39:44,323 [59] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '59'} gunicorn-registry stdout | 2025-09-26 08:39:44,347 [257] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '257'} gunicorn-registry stdout | 2025-09-26 08:39:44,371 [255] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '255'} gunicorn-registry stdout | 2025-09-26 08:39:44,386 [258] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '258'} gunicorn-registry stdout | 2025-09-26 08:39:44,397 [252] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '252'} gunicorn-registry stdout | 2025-09-26 08:39:44,402 [256] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '256'} gunicorn-registry stdout | 2025-09-26 08:39:44,406 [254] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '254'} gunicorn-registry stdout | 2025-09-26 08:39:44,414 [251] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '251'} repositorygcworker stdout | 2025-09-26 08:39:45,077 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:39:45,077 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:19.075668+00:00 (in 33.998302 seconds) repositorygcworker stdout | 2025-09-26 08:39:45,077 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:44:45 GMT)" (scheduled at 2025-09-26 08:39:45.076950+00:00) repositorygcworker stdout | 2025-09-26 08:39:45,078 [81] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [False, datetime.datetime(2025, 9, 26, 8, 39, 45, 77671), 'repositorygc/%']) repositorygcworker stdout | 2025-09-26 08:39:45,085 [81] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 39, 45, 77671), True, datetime.datetime(2025, 9, 26, 8, 39, 45, 77671), 0, 'repositorygc/%']) repositorygcworker stdout | 2025-09-26 08:39:45,087 [81] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) AND NOT ("t1"."queue_name" IN (SELECT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s)))))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 39, 45, 77671), True, datetime.datetime(2025, 9, 26, 8, 39, 45, 77671), 0, 'repositorygc/%', False, datetime.datetime(2025, 9, 26, 8, 39, 45, 77671), 'repositorygc/%']) repositorygcworker stdout | 2025-09-26 08:39:45,089 [81] [DEBUG] [data.database] Disconnecting from database. repositorygcworker stdout | 2025-09-26 08:39:45,089 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:44:45 GMT)" executed successfully buildlogsarchiver stdout | 2025-09-26 08:39:45,629 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} buildlogsarchiver stdout | 2025-09-26 08:39:47,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:39:47,375 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:17.375102+00:00 (in 29.999548 seconds) buildlogsarchiver stdout | 2025-09-26 08:39:47,375 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:17 GMT)" (scheduled at 2025-09-26 08:39:47.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:39:47,376 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 39, 47, 375852), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:39:47,383 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:39:47,383 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:39:47,383 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:17 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:39:48,198 [247] [DEBUG] [app] Starting request: urn:request:62081585-d8cb-4f23-bcf0-47108d6597f3 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:39:48,200 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:39:48,204 [258] [DEBUG] [app] Starting request: urn:request:900b0e7d-f9f9-49fd-8451-51e73d38230d (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:39:48,205 [258] [DEBUG] [app] Ending request: urn:request:900b0e7d-f9f9-49fd-8451-51e73d38230d (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:900b0e7d-f9f9-49fd-8451-51e73d38230d', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:39:48,206 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:39:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:39:48,206 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:39:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.001) gunicorn-web stdout | 2025-09-26 08:39:48,207 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:39:48,209 [247] [DEBUG] [app] Starting request: urn:request:d9da08ee-7b43-418b-95fc-30ef51c45f6c (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:39:48,209 [247] [DEBUG] [app] Ending request: urn:request:d9da08ee-7b43-418b-95fc-30ef51c45f6c (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:d9da08ee-7b43-418b-95fc-30ef51c45f6c', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:39:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.001) gunicorn-web stdout | 2025-09-26 08:39:48,210 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:39:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:39:48,210 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:39:48,210 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:39:48,211 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:39:48,211 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:39:48,215 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:39:48,215 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:39:48,219 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:39:48,220 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:39:48,221 [247] [DEBUG] [app] Ending request: urn:request:62081585-d8cb-4f23-bcf0-47108d6597f3 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:62081585-d8cb-4f23-bcf0-47108d6597f3', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:39:48,221 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:39:48,222 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:39:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:39:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.024 118 0.024) gunicorn-web stdout | 2025-09-26 08:39:48,261 [247] [DEBUG] [app] Starting request: urn:request:ae727836-56f4-4646-9cde-4eda39723b96 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:39:48,263 [258] [DEBUG] [app] Starting request: urn:request:81f3d5d1-2102-46c2-bcf0-fdf0a071d1f6 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:39:48,263 [258] [DEBUG] [app] Ending request: urn:request:81f3d5d1-2102-46c2-bcf0-fdf0a071d1f6 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:81f3d5d1-2102-46c2-bcf0-fdf0a071d1f6', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:39:48,264 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:39:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:39:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:39:48,264 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:39:48,265 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:39:48,267 [247] [DEBUG] [app] Starting request: urn:request:b42587df-34f0-4d17-a0b3-19719b54cd8a (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:39:48,267 [247] [DEBUG] [app] Ending request: urn:request:b42587df-34f0-4d17-a0b3-19719b54cd8a (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:b42587df-34f0-4d17-a0b3-19719b54cd8a', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:39:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.002) gunicorn-web stdout | 2025-09-26 08:39:48,268 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:39:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:39:48,269 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:39:48,269 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:39:48,269 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:39:48,269 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:39:48,274 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:39:48,275 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:39:48,279 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:39:48,280 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:39:48,281 [247] [DEBUG] [app] Ending request: urn:request:ae727836-56f4-4646-9cde-4eda39723b96 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:ae727836-56f4-4646-9cde-4eda39723b96', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:39:48,281 [247] [DEBUG] [data.database] Disconnecting from database. nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:39:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.021 118 0.021) gunicorn-web stdout | 2025-09-26 08:39:48,281 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:39:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" securityworker stdout | 2025-09-26 08:39:48,837 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} notificationworker stdout | 2025-09-26 08:39:50,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:39:50,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:00.692901+00:00 (in 9.999114 seconds) notificationworker stdout | 2025-09-26 08:39:50,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:00 GMT)" (scheduled at 2025-09-26 08:39:50.692901+00:00) notificationworker stdout | 2025-09-26 08:39:50,694 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:39:50,695 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 39, 50, 694155), True, datetime.datetime(2025, 9, 26, 8, 39, 50, 694155), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:39:50,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:39:50,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:39:50,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:00 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:39:50,885 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:39:50,886 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:39:52.886914+00:00 (in 2.000762 seconds) exportactionlogsworker stdout | 2025-09-26 08:39:50,886 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:50 GMT)" (scheduled at 2025-09-26 08:39:50.885619+00:00) exportactionlogsworker stdout | 2025-09-26 08:39:50,886 [56] [DEBUG] [workers.queueworker] Getting work item from queue. exportactionlogsworker stdout | 2025-09-26 08:39:50,887 [56] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 39, 50, 886483), True, datetime.datetime(2025, 9, 26, 8, 39, 50, 886483), 0, 'exportactionlogs/%', 50, 1, 0]) exportactionlogsworker stdout | 2025-09-26 08:39:50,893 [56] [DEBUG] [workers.queueworker] No more work. exportactionlogsworker stdout | 2025-09-26 08:39:50,893 [56] [DEBUG] [data.database] Disconnecting from database. exportactionlogsworker stdout | 2025-09-26 08:39:50,894 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:50 GMT)" executed successfully blobuploadcleanupworker stdout | 2025-09-26 08:39:52,168 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} proxycacheblobworker stdout | 2025-09-26 08:39:52,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:39:52,478 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:02.477454+00:00 (in 9.999466 seconds) proxycacheblobworker stdout | 2025-09-26 08:39:52,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:02 GMT)" (scheduled at 2025-09-26 08:39:52.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:39:52,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:39:52,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 39, 52, 478441), True, datetime.datetime(2025, 9, 26, 8, 39, 52, 478441), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:39:52,489 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:39:52,489 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:39:52,489 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:02 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:39:52,887 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:39:52,887 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:50.885619+00:00 (in 57.998248 seconds) exportactionlogsworker stdout | 2025-09-26 08:39:52,887 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:52 GMT)" (scheduled at 2025-09-26 08:39:52.886914+00:00) exportactionlogsworker stdout | 2025-09-26 08:39:52,887 [56] [DEBUG] [workers.queueworker] Running watchdog. exportactionlogsworker stdout | 2025-09-26 08:39:52,887 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:52 GMT)" executed successfully globalpromstats stdout | 2025-09-26 08:39:55,223 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} proxycacheblobworker stdout | 2025-09-26 08:39:55,935 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} notificationworker stdout | 2025-09-26 08:39:57,030 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} gcworker stdout | 2025-09-26 08:39:57,083 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:39:57,083 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:07.085344+00:00 (in 10.001396 seconds) gcworker stdout | 2025-09-26 08:39:57,084 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:27 GMT)" (scheduled at 2025-09-26 08:39:57.083344+00:00) gcworker stdout | 2025-09-26 08:39:57,084 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:39:57,084 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:27 GMT)" executed successfully repositoryactioncounter stdout | 2025-09-26 08:39:57,127 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} exportactionlogsworker stdout | 2025-09-26 08:39:57,309 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} manifestsubjectbackfillworker stdout | 2025-09-26 08:39:57,837 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} namespacegcworker stdout | 2025-09-26 08:39:59,791 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:39:59,791 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:08.793810+00:00 (in 9.002255 seconds) namespacegcworker stdout | 2025-09-26 08:39:59,791 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:59 GMT)" (scheduled at 2025-09-26 08:39:59.791127+00:00) namespacegcworker stdout | 2025-09-26 08:39:59,791 [66] [DEBUG] [workers.queueworker] Getting work item from queue. namespacegcworker stdout | 2025-09-26 08:39:59,792 [66] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 39, 59, 791870), True, datetime.datetime(2025, 9, 26, 8, 39, 59, 791870), 0, 'namespacegc/%', 50, 1, 0]) namespacegcworker stdout | 2025-09-26 08:39:59,800 [66] [DEBUG] [workers.queueworker] No more work. namespacegcworker stdout | 2025-09-26 08:39:59,800 [66] [DEBUG] [data.database] Disconnecting from database. namespacegcworker stdout | 2025-09-26 08:39:59,800 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:40:59 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:40:00,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:40:00,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:10.692901+00:00 (in 9.999080 seconds) notificationworker stdout | 2025-09-26 08:40:00,694 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:10 GMT)" (scheduled at 2025-09-26 08:40:00.692901+00:00) notificationworker stdout | 2025-09-26 08:40:00,694 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:40:00,695 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 40, 0, 694372), True, datetime.datetime(2025, 9, 26, 8, 40, 0, 694372), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:40:00,703 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:40:00,703 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:40:00,704 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:10 GMT)" executed successfully proxycacheblobworker stdout | 2025-09-26 08:40:02,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:40:02,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:12.477454+00:00 (in 9.999479 seconds) proxycacheblobworker stdout | 2025-09-26 08:40:02,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:12 GMT)" (scheduled at 2025-09-26 08:40:02.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:40:02,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:40:02,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 40, 2, 478362), True, datetime.datetime(2025, 9, 26, 8, 40, 2, 478362), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:40:02,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:40:02,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:40:02,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:12 GMT)" executed successfully storagereplication stdout | 2025-09-26 08:40:02,661 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} namespacegcworker stdout | 2025-09-26 08:40:03,036 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-web stdout | 2025-09-26 08:40:03,199 [247] [DEBUG] [app] Starting request: urn:request:21f33bed-91f1-4a00-b4f9-d66b90695953 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:40:03,200 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:40:03,202 [258] [DEBUG] [app] Starting request: urn:request:d7db4276-ada0-4f06-afd3-83e087565b69 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:40:03,203 [258] [DEBUG] [app] Ending request: urn:request:d7db4276-ada0-4f06-afd3-83e087565b69 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:d7db4276-ada0-4f06-afd3-83e087565b69', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:40:03,203 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:40:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:40:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:40:03,203 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:40:03,204 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:40:03,205 [247] [DEBUG] [app] Starting request: urn:request:adfebca1-2b47-4661-a0ab-07346d0940d7 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:40:03,206 [247] [DEBUG] [app] Ending request: urn:request:adfebca1-2b47-4661-a0ab-07346d0940d7 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:adfebca1-2b47-4661-a0ab-07346d0940d7', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:40:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.002) gunicorn-web stdout | 2025-09-26 08:40:03,207 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:40:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:40:03,207 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:40:03,207 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:40:03,208 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:40:03,208 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:40:03,212 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:40:03,212 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:40:03,217 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:40:03,218 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:40:03,219 [247] [DEBUG] [app] Ending request: urn:request:21f33bed-91f1-4a00-b4f9-d66b90695953 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:21f33bed-91f1-4a00-b4f9-d66b90695953', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:40:03,219 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:40:03,219 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:40:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:40:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.020 118 0.020) gunicorn-web stdout | 2025-09-26 08:40:03,260 [247] [DEBUG] [app] Starting request: urn:request:cb551ff2-67b5-4f5f-a2b4-7ca17ea2eb84 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:40:03,263 [258] [DEBUG] [app] Starting request: urn:request:b05dec54-8181-4ccf-9583-f6cc6df8ad91 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:40:03,263 [258] [DEBUG] [app] Ending request: urn:request:b05dec54-8181-4ccf-9583-f6cc6df8ad91 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:b05dec54-8181-4ccf-9583-f6cc6df8ad91', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:40:03,263 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:40:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:40:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:40:03,263 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:40:03,264 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:40:03,266 [250] [DEBUG] [app] Starting request: urn:request:e3feddf5-cc8e-4118-bde2-d18cd31d15ee (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:40:03,266 [250] [DEBUG] [app] Ending request: urn:request:e3feddf5-cc8e-4118-bde2-d18cd31d15ee (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:e3feddf5-cc8e-4118-bde2-d18cd31d15ee', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:40:03,267 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:40:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:40:03,267 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:40:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:40:03,267 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:40:03,268 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:40:03,268 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:40:03,272 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:40:03,272 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:40:03,275 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:40:03,276 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:40:03,277 [247] [DEBUG] [app] Ending request: urn:request:cb551ff2-67b5-4f5f-a2b4-7ca17ea2eb84 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:cb551ff2-67b5-4f5f-a2b4-7ca17ea2eb84', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:40:03,277 [247] [DEBUG] [data.database] Disconnecting from database. nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:40:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.017 118 0.017) gunicorn-web stdout | 2025-09-26 08:40:03,277 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:40:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" autopruneworker stdout | 2025-09-26 08:40:04,426 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} expiredappspecifictokenworker stdout | 2025-09-26 08:40:04,509 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} manifestbackfillworker stdout | 2025-09-26 08:40:04,734 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} builder stdout | 2025-09-26 08:40:05,114 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} logrotateworker stdout | 2025-09-26 08:40:06,431 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gcworker stdout | 2025-09-26 08:40:07,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:40:07,085 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:27.083344+00:00 (in 19.997581 seconds) gcworker stdout | 2025-09-26 08:40:07,085 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:37 GMT)" (scheduled at 2025-09-26 08:40:07.085344+00:00) gcworker stdout | 2025-09-26 08:40:07,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gcworker stdout | 2025-09-26 08:40:07,092 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875707091, None, 1, 0]) gcworker stdout | 2025-09-26 08:40:07,093 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:40:07,093 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:37 GMT)" executed successfully securityworker stdout | 2025-09-26 08:40:07,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:40:07,683 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:11.684816+00:00 (in 4.000850 seconds) securityworker stdout | 2025-09-26 08:40:07,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:37 GMT)" (scheduled at 2025-09-26 08:40:07.683505+00:00) securityworker stdout | 2025-09-26 08:40:07,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:40:07,684 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:40:07,686 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:40:07,688 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:40:07,694 [86] [DEBUG] [peewee] ('SELECT Min("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:40:07,694 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:40:07,694 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:40:07,694 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:40:07,694 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:40:07,695 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 19, 27]) securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 19-27 by worker securityworker stdout | 2025-09-26 08:40:07,697 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 19-27 by worker securityworker stdout | 2025-09-26 08:40:07,697 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 19-27 securityworker stdout | 2025-09-26 08:40:07,697 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 19-27 securityworker stdout | 2025-09-26 08:40:07,697 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:40:07,697 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:40:07,697 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stdout | 2025-09-26 08:40:07,697 [86] [DEBUG] [util.migrate.allocator] Left range 19-27 securityworker stdout | 2025-09-26 08:40:07,697 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 27-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 19-27 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 19-27 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Left range 19-27 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 27-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:40:07,697 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:40:07,698 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 27, 35]) securityworker stdout | 2025-09-26 08:40:07,698 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 27-35 by worker securityworker stdout | 2025-09-26 08:40:07,698 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 27-35 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 27-35 by worker securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 27-35 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 19-27 securityworker stdout | 2025-09-26 08:40:07,698 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 19-27 securityworker stdout | 2025-09-26 08:40:07,698 [86] [DEBUG] [util.migrate.allocator] Already merged with block 19-27 securityworker stdout | 2025-09-26 08:40:07,698 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:40:07,698 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 19-35 securityworker stdout | 2025-09-26 08:40:07,698 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:40:07,698 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:40:07,698 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Already merged with block 19-27 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 19-35 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Right range 19-35 securityworker stdout | 2025-09-26 08:40:07,699 [86] [DEBUG] [util.migrate.allocator] Right range 19-35 securityworker stdout | 2025-09-26 08:40:07,699 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-19 securityworker stdout | 2025-09-26 08:40:07,699 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 11 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-19 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 11 securityworker stdout | 2025-09-26 08:40:07,700 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 9]) securityworker stdout | 2025-09-26 08:40:07,700 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stdout | 2025-09-26 08:40:07,700 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stdout | 2025-09-26 08:40:07,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 9 securityworker stdout | 2025-09-26 08:40:07,700 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:40:07,700 [86] [DEBUG] [util.migrate.allocator] Total range: 9-36 securityworker stdout | 2025-09-26 08:40:07,700 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stdout | 2025-09-26 08:40:07,700 [86] [DEBUG] [util.migrate.allocator] Left range 19-35 securityworker stdout | 2025-09-26 08:40:07,700 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 35-36 securityworker stdout | 2025-09-26 08:40:07,700 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 35 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 9 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 9-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Left range 19-35 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 35-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 35 securityworker stdout | 2025-09-26 08:40:07,701 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 35, 36]) securityworker stdout | 2025-09-26 08:40:07,701 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 35-36 by worker securityworker stdout | 2025-09-26 08:40:07,701 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 35-36 securityworker stdout | 2025-09-26 08:40:07,701 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 19-35 securityworker stdout | 2025-09-26 08:40:07,701 [86] [DEBUG] [util.migrate.allocator] Already merged with block 19-35 securityworker stdout | 2025-09-26 08:40:07,701 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 19 securityworker stdout | 2025-09-26 08:40:07,701 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:40:07,702 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:40:07,702 [86] [DEBUG] [util.migrate.allocator] Total range: 9-19 securityworker stdout | 2025-09-26 08:40:07,702 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:40:07,702 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 9-19 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 35-36 by worker securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 35-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 19-35 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Already merged with block 19-35 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 19 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 9-19 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 9-19 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 11 securityworker stdout | 2025-09-26 08:40:07,702 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 11 securityworker stdout | 2025-09-26 08:40:07,702 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 11, 19]) securityworker stdout | 2025-09-26 08:40:07,703 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 11-19 by worker securityworker stdout | 2025-09-26 08:40:07,703 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 11-19 securityworker stdout | 2025-09-26 08:40:07,703 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 11 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 11-19 by worker securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 11-19 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 11 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:40:07,703 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:40:07,703 [86] [DEBUG] [util.migrate.allocator] Total range: 9-11 securityworker stdout | 2025-09-26 08:40:07,703 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:40:07,703 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 9-11 securityworker stdout | 2025-09-26 08:40:07,703 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 9 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 9-11 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 9-11 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 9 securityworker stdout | 2025-09-26 08:40:07,703 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 9, 17]) securityworker stdout | 2025-09-26 08:40:07,704 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 9-17 by worker securityworker stdout | 2025-09-26 08:40:07,704 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 9-17 securityworker stdout | 2025-09-26 08:40:07,704 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 9 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 9-17 by worker securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 9-17 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 9 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 17 securityworker stdout | 2025-09-26 08:40:07,704 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 17 securityworker stdout | 2025-09-26 08:40:07,704 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:40:07,704 [86] [DEBUG] [util.migrate.allocator] Total range: 17-9 securityworker stdout | 2025-09-26 08:40:07,704 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:40:07,704 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:40:07,704 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:40:07,704 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:40:07,704 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 17-9 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:40:07,705 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 35, 7, 688428), 25, 33]) securityworker stdout | 2025-09-26 08:40:07,705 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 25-33 by worker securityworker stdout | 2025-09-26 08:40:07,705 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 25-33 securityworker stdout | 2025-09-26 08:40:07,705 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 25-33 securityworker stdout | 2025-09-26 08:40:07,706 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:40:07,706 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:40:07,706 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:40:07,706 [86] [DEBUG] [util.migrate.allocator] Right range 25-33 securityworker stdout | 2025-09-26 08:40:07,706 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-25 securityworker stdout | 2025-09-26 08:40:07,706 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 17 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 25-33 by worker securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 25-33 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 25-33 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Right range 25-33 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-25 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 17 securityworker stdout | 2025-09-26 08:40:07,706 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 35, 7, 688428), 4, 12]) securityworker stdout | 2025-09-26 08:40:07,707 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 4-12 by worker securityworker stdout | 2025-09-26 08:40:07,707 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 4-12 securityworker stdout | 2025-09-26 08:40:07,707 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 4-12 securityworker stdout | 2025-09-26 08:40:07,707 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stdout | 2025-09-26 08:40:07,707 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:40:07,707 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 3 total holes securityworker stdout | 2025-09-26 08:40:07,707 [86] [DEBUG] [util.migrate.allocator] Right range 4-12 securityworker stdout | 2025-09-26 08:40:07,707 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-4 securityworker stdout | 2025-09-26 08:40:07,707 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 4-12 by worker securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 4-12 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 4-12 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 3 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Right range 4-12 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-4 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:40:07,708 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 35, 7, 688428), 1, 9]) securityworker stdout | 2025-09-26 08:40:07,708 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stdout | 2025-09-26 08:40:07,708 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stdout | 2025-09-26 08:40:07,708 [86] [DEBUG] [util.migrate.allocator] Merging with block 4-12 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 4-12 securityworker stdout | 2025-09-26 08:40:07,709 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 12 securityworker stdout | 2025-09-26 08:40:07,709 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:40:07,709 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:40:07,709 [86] [DEBUG] [util.migrate.allocator] Total range: 12-36 securityworker stdout | 2025-09-26 08:40:07,709 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 12 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 12-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Left range 25-33 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 33-36 securityworker stdout | 2025-09-26 08:40:07,709 [86] [DEBUG] [util.migrate.allocator] Left range 25-33 securityworker stdout | 2025-09-26 08:40:07,709 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 33-36 securityworker stdout | 2025-09-26 08:40:07,709 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 33 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 33 securityworker stdout | 2025-09-26 08:40:07,710 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 35, 7, 688428), 33, 36]) securityworker stdout | 2025-09-26 08:40:07,710 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 33-36 by worker securityworker stdout | 2025-09-26 08:40:07,710 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 33-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 33-36 by worker securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 33-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 25-33 securityworker stdout | 2025-09-26 08:40:07,710 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 25-33 securityworker stdout | 2025-09-26 08:40:07,711 [86] [DEBUG] [util.migrate.allocator] Already merged with block 25-33 securityworker stdout | 2025-09-26 08:40:07,711 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 25 securityworker stdout | 2025-09-26 08:40:07,711 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:40:07,711 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:40:07,711 [86] [DEBUG] [util.migrate.allocator] Total range: 12-25 securityworker stdout | 2025-09-26 08:40:07,711 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:40:07,711 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 12-25 securityworker stdout | 2025-09-26 08:40:07,711 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 17 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Already merged with block 25-33 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 25 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 12-25 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 12-25 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 17 securityworker stdout | 2025-09-26 08:40:07,711 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 35, 7, 688428), 13, 21]) securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 13-21 by worker securityworker stdout | 2025-09-26 08:40:07,712 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 13-21 by worker securityworker stdout | 2025-09-26 08:40:07,713 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 13-21 securityworker stdout | 2025-09-26 08:40:07,713 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 13-21 securityworker stdout | 2025-09-26 08:40:07,713 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:40:07,713 [86] [DEBUG] [util.migrate.allocator] Total range: 12-25 securityworker stdout | 2025-09-26 08:40:07,713 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:40:07,713 [86] [DEBUG] [util.migrate.allocator] Right range 13-21 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 13-21 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 13-21 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 12-25 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Right range 13-21 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 12-13 securityworker stdout | 2025-09-26 08:40:07,713 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 12-13 securityworker stdout | 2025-09-26 08:40:07,713 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 12 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 12 securityworker stdout | 2025-09-26 08:40:07,713 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 35, 7, 688428), 12, 20]) securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 12-20 by worker securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 12-20 securityworker stdout | 2025-09-26 08:40:07,714 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 12-20 by worker securityworker stdout | 2025-09-26 08:40:07,714 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 12-20 securityworker stdout | 2025-09-26 08:40:07,714 [86] [DEBUG] [util.migrate.allocator] Merging with block 13-21 securityworker stdout | 2025-09-26 08:40:07,714 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 21 securityworker stdout | 2025-09-26 08:40:07,714 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:40:07,714 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:40:07,714 [86] [DEBUG] [util.migrate.allocator] Total range: 21-25 securityworker stdout | 2025-09-26 08:40:07,714 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:40:07,714 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 21-25 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 13-21 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 21 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 21-25 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 21-25 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 21 securityworker stdout | 2025-09-26 08:40:07,714 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 21 securityworker stdout | 2025-09-26 08:40:07,715 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 35, 7, 688428), 21, 29]) securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 21-29 by worker securityworker stdout | 2025-09-26 08:40:07,715 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 21-29 by worker securityworker stdout | 2025-09-26 08:40:07,715 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 21-29 securityworker stdout | 2025-09-26 08:40:07,715 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 21 securityworker stdout | 2025-09-26 08:40:07,715 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 29 securityworker stdout | 2025-09-26 08:40:07,715 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:40:07,716 [86] [DEBUG] [util.migrate.allocator] Total range: 29-21 securityworker stdout | 2025-09-26 08:40:07,716 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 21-29 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 21 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 29 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 29-21 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:40:07,716 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:40:07,716 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:40:07,716 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:40:07,716 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:40:07,716 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 35, 7, 688428), 6, 14]) securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 6-14 by worker securityworker stdout | 2025-09-26 08:40:07,717 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 6-14 by worker securityworker stdout | 2025-09-26 08:40:07,717 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 6-14 securityworker stdout | 2025-09-26 08:40:07,717 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 6-14 securityworker stdout | 2025-09-26 08:40:07,717 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:40:07,717 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:40:07,717 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stdout | 2025-09-26 08:40:07,717 [86] [DEBUG] [util.migrate.allocator] Left range 6-14 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 6-14 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 6-14 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Left range 6-14 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 14-36 securityworker stdout | 2025-09-26 08:40:07,717 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 14-36 securityworker stdout | 2025-09-26 08:40:07,718 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:40:07,719 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 35, 7, 688428), 26, 34]) securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 26-34 by worker securityworker stdout | 2025-09-26 08:40:07,719 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 26-34 by worker securityworker stdout | 2025-09-26 08:40:07,719 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 26-34 securityworker stdout | 2025-09-26 08:40:07,719 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 26-34 securityworker stdout | 2025-09-26 08:40:07,719 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stdout | 2025-09-26 08:40:07,719 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:40:07,719 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 3 total holes securityworker stdout | 2025-09-26 08:40:07,719 [86] [DEBUG] [util.migrate.allocator] Left range 6-14 securityworker stdout | 2025-09-26 08:40:07,719 [86] [DEBUG] [util.migrate.allocator] Right range 26-34 securityworker stdout | 2025-09-26 08:40:07,719 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 14-26 securityworker stdout | 2025-09-26 08:40:07,719 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 18 securityworker stdout | 2025-09-26 08:40:07,720 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 35, 7, 688428), 14, 22]) securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 26-34 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 26-34 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 3 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Left range 6-14 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Right range 26-34 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 14-26 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 18 securityworker stdout | 2025-09-26 08:40:07,721 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 14-22 by worker securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 14-22 by worker securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 14-22 securityworker stdout | 2025-09-26 08:40:07,721 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 14-22 securityworker stdout | 2025-09-26 08:40:07,721 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 6-14 securityworker stdout | 2025-09-26 08:40:07,721 [86] [DEBUG] [util.migrate.allocator] Already merged with block 6-14 securityworker stdout | 2025-09-26 08:40:07,721 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:40:07,721 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 6-22 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 6-14 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Already merged with block 6-14 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 6-22 securityworker stdout | 2025-09-26 08:40:07,721 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stdout | 2025-09-26 08:40:07,721 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:40:07,721 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 3 total holes securityworker stdout | 2025-09-26 08:40:07,721 [86] [DEBUG] [util.migrate.allocator] Right range 6-22 securityworker stdout | 2025-09-26 08:40:07,721 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-6 securityworker stdout | 2025-09-26 08:40:07,721 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 3 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Right range 6-22 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-6 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:40:07,722 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 35, 7, 688428), 1, 9]) securityworker stdout | 2025-09-26 08:40:07,723 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stdout | 2025-09-26 08:40:07,723 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stdout | 2025-09-26 08:40:07,723 [86] [DEBUG] [util.migrate.allocator] Merging with block 6-22 securityworker stdout | 2025-09-26 08:40:07,723 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 22 securityworker stdout | 2025-09-26 08:40:07,723 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:40:07,723 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:40:07,723 [86] [DEBUG] [util.migrate.allocator] Total range: 22-36 securityworker stdout | 2025-09-26 08:40:07,723 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 6-22 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 22 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 22-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Right range 26-34 securityworker stdout | 2025-09-26 08:40:07,723 [86] [DEBUG] [util.migrate.allocator] Right range 26-34 securityworker stdout | 2025-09-26 08:40:07,723 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 22-26 securityworker stdout | 2025-09-26 08:40:07,723 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 22 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 22-26 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 22 securityworker stdout | 2025-09-26 08:40:07,724 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 35, 7, 688428), 22, 30]) securityworker stdout | 2025-09-26 08:40:07,724 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 22-30 by worker securityworker stdout | 2025-09-26 08:40:07,724 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 22-30 securityworker stdout | 2025-09-26 08:40:07,725 [86] [DEBUG] [util.migrate.allocator] Merging with block 26-34 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 22-30 by worker securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 22-30 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 26-34 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 34 securityworker stdout | 2025-09-26 08:40:07,725 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 34 securityworker stdout | 2025-09-26 08:40:07,725 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:40:07,725 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:40:07,725 [86] [DEBUG] [util.migrate.allocator] Total range: 34-36 securityworker stdout | 2025-09-26 08:40:07,725 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:40:07,725 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 34-36 securityworker stdout | 2025-09-26 08:40:07,725 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 34 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 34-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 34-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 34 securityworker stdout | 2025-09-26 08:40:07,725 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 35, 7, 688428), 34, 36]) securityworker stdout | 2025-09-26 08:40:07,726 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 34-36 by worker securityworker stdout | 2025-09-26 08:40:07,726 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 34-36 securityworker stdout | 2025-09-26 08:40:07,726 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 34 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 34-36 by worker securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 34-36 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 34 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:40:07,726 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:40:07,726 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:40:07,726 [86] [DEBUG] [util.migrate.allocator] Total range: 36-34 securityworker stdout | 2025-09-26 08:40:07,726 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:40:07,726 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:40:07,726 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:37 GMT)" executed successfully securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] Total range: 36-34 securityworker stderr | 2025-09-26 08:40:07 [86] [DEBUG] [util.migrate.allocator] No more work by worker namespacegcworker stdout | 2025-09-26 08:40:08,794 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:40:08,794 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:59.791127+00:00 (in 50.996887 seconds) namespacegcworker stdout | 2025-09-26 08:40:08,794 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:08 GMT)" (scheduled at 2025-09-26 08:40:08.793810+00:00) namespacegcworker stdout | 2025-09-26 08:40:08,794 [66] [DEBUG] [workers.queueworker] Running watchdog. namespacegcworker stdout | 2025-09-26 08:40:08,794 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:08 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:40:09,786 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:40:09,792 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:40:09,813 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:40:09,822 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:40:09,837 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gcworker stdout | 2025-09-26 08:40:09,909 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} securityscanningnotificationworker stdout | 2025-09-26 08:40:10,101 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} queuecleanupworker stdout | 2025-09-26 08:40:10,329 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} gunicorn-secscan stdout | 2025-09-26 08:40:10,507 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} gunicorn-secscan stdout | 2025-09-26 08:40:10,513 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:40:10,517 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} securityscanningnotificationworker stdout | 2025-09-26 08:40:10,584 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:40:10,584 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:28.587130+00:00 (in 18.002270 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:40:10,585 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:10 GMT)" (scheduled at 2025-09-26 08:40:10.584403+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:40:10,585 [82] [DEBUG] [workers.queueworker] Getting work item from queue. securityscanningnotificationworker stdout | 2025-09-26 08:40:10,585 [82] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 40, 10, 585193), True, datetime.datetime(2025, 9, 26, 8, 40, 10, 585193), 0, 'secscanv4/%', 50, 1, 0]) securityscanningnotificationworker stdout | 2025-09-26 08:40:10,592 [82] [DEBUG] [workers.queueworker] No more work. securityscanningnotificationworker stdout | 2025-09-26 08:40:10,592 [82] [DEBUG] [data.database] Disconnecting from database. securityscanningnotificationworker stdout | 2025-09-26 08:40:10,592 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:10 GMT)" executed successfully autopruneworker stdout | 2025-09-26 08:40:10,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:40:10,598 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:40.598100+00:00 (in 29.999607 seconds) autopruneworker stdout | 2025-09-26 08:40:10,598 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:40 GMT)" (scheduled at 2025-09-26 08:40:10.598100+00:00) autopruneworker stdout | 2025-09-26 08:40:10,603 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758872410602, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:40:10,605 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:40:10,605 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:40:10,605 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:40 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:40:10,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:40:10,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:20.692901+00:00 (in 9.999566 seconds) notificationworker stdout | 2025-09-26 08:40:10,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:20 GMT)" (scheduled at 2025-09-26 08:40:10.692901+00:00) notificationworker stdout | 2025-09-26 08:40:10,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:40:10,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 40, 10, 693627), True, datetime.datetime(2025, 9, 26, 8, 40, 10, 693627), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:40:10,700 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:40:10,700 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:40:10,700 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:20 GMT)" executed successfully chunkcleanupworker stdout | 2025-09-26 08:40:11,143 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} securityworker stdout | 2025-09-26 08:40:11,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:40:11,685 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:37.683505+00:00 (in 25.998143 seconds) securityworker stdout | 2025-09-26 08:40:11,685 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:41 GMT)" (scheduled at 2025-09-26 08:40:11.684816+00:00) securityworker stdout | 2025-09-26 08:40:11,685 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:40:11,685 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:40:11,687 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:40:11,691 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:40:11,697 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:40:11,697 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:40:11,697 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:40:11,697 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:40:11,698 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 36]) securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:40:11,700 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:40:11,700 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:40:11,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:40:11,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:40:11,701 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:40:11,701 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:40:11,701 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:40:11,701 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:40:11,701 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:40:11,701 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:40:11,701 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:40:11,701 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 35, 11, 691258), 1, 36]) securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:40:11,703 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:40:11,703 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:40:11,703 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:40:11,703 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:40:11,703 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:40:11,703 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:40:11,703 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:40:11,703 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:40:11,703 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:40:11,703 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:40:11,703 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:40:11,704 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 35, 11, 691258), 1, 36]) securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:40:11,704 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:40:11,705 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:40:11,705 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:40:11,705 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:40:11,705 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:40:11,705 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:40:11,705 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:40:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:40:11,705 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:40:11,705 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:41 GMT)" executed successfully repositorygcworker stdout | 2025-09-26 08:40:12,123 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} proxycacheblobworker stdout | 2025-09-26 08:40:12,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:40:12,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:22.477454+00:00 (in 9.999578 seconds) proxycacheblobworker stdout | 2025-09-26 08:40:12,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:22 GMT)" (scheduled at 2025-09-26 08:40:12.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:40:12,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:40:12,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 40, 12, 478194), True, datetime.datetime(2025, 9, 26, 8, 40, 12, 478194), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:40:12,485 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:40:12,485 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:40:12,485 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:22 GMT)" executed successfully servicekey stdout | 2025-09-26 08:40:12,752 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:40:12,830 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} gunicorn-registry stdout | 2025-09-26 08:40:14,338 [253] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '253'} gunicorn-registry stdout | 2025-09-26 08:40:14,345 [59] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '59'} gunicorn-registry stdout | 2025-09-26 08:40:14,366 [257] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '257'} gunicorn-registry stdout | 2025-09-26 08:40:14,398 [255] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '255'} gunicorn-registry stdout | 2025-09-26 08:40:14,405 [258] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '258'} gunicorn-registry stdout | 2025-09-26 08:40:14,422 [252] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '252'} gunicorn-registry stdout | 2025-09-26 08:40:14,426 [256] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '256'} gunicorn-registry stdout | 2025-09-26 08:40:14,430 [254] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '254'} gunicorn-registry stdout | 2025-09-26 08:40:14,435 [251] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '251'} buildlogsarchiver stdout | 2025-09-26 08:40:15,646 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} buildlogsarchiver stdout | 2025-09-26 08:40:17,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:40:17,375 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:47.375102+00:00 (in 29.999566 seconds) buildlogsarchiver stdout | 2025-09-26 08:40:17,375 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:47 GMT)" (scheduled at 2025-09-26 08:40:17.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:40:17,376 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 40, 17, 375802), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:40:17,383 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:40:17,383 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:40:17,383 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:47 GMT)" executed successfully manifestsubjectbackfillworker stdout | 2025-09-26 08:40:17,985 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:40:17,986 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:33.984400+00:00 (in 15.998193 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:40:17,986 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:17 GMT)" (scheduled at 2025-09-26 08:40:17.985743+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:40:17,987 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."artifact_type_backfilled" = %s) OR ("t1"."artifact_type_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:40:17,993 [64] [DEBUG] [__main__] Manifest artifact_type backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:40:17,994 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:40:17,994 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:17 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:40:18,203 [248] [DEBUG] [app] Starting request: urn:request:d2c8dba5-8080-4d0f-ac42-9e4155cc65b3 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:40:18,218 [248] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:40:18,220 [251] [DEBUG] [app] Starting request: urn:request:fa3c9744-60d8-4447-b01c-74f15d516718 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:40:18,220 [251] [DEBUG] [app] Ending request: urn:request:fa3c9744-60d8-4447-b01c-74f15d516718 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:fa3c9744-60d8-4447-b01c-74f15d516718', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:40:18,221 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:40:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:40:18,221 [248] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:40:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:40:18,222 [248] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:40:18,223 [248] [DEBUG] [app] Starting request: urn:request:67980fee-d457-4d80-b443-05c9dccbb210 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:40:18,224 [248] [DEBUG] [app] Ending request: urn:request:67980fee-d457-4d80-b443-05c9dccbb210 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:67980fee-d457-4d80-b443-05c9dccbb210', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:40:18,224 [248] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:40:18 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:40:18 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.002) gunicorn-web stdout | 2025-09-26 08:40:18,225 [248] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:40:18,225 [248] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:40:18,225 [248] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:40:18,225 [248] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:40:18,229 [248] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:40:18,229 [248] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:40:18,233 [248] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:40:18,235 [248] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:40:18,236 [248] [DEBUG] [app] Ending request: urn:request:d2c8dba5-8080-4d0f-ac42-9e4155cc65b3 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:d2c8dba5-8080-4d0f-ac42-9e4155cc65b3', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:40:18,236 [248] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:40:18,236 [248] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:40:18 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:40:18 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.034 118 0.034) gunicorn-web stdout | 2025-09-26 08:40:18,261 [247] [DEBUG] [app] Starting request: urn:request:f625f365-267c-44a9-bbb2-79f9f6d5db64 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:40:18,262 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:40:18,264 [251] [DEBUG] [app] Starting request: urn:request:d344c221-6ff5-488e-bf7f-4549e86a834d (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:40:18,264 [251] [DEBUG] [app] Ending request: urn:request:d344c221-6ff5-488e-bf7f-4549e86a834d (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:d344c221-6ff5-488e-bf7f-4549e86a834d', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:40:18,264 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:40:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:40:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:40:18,264 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:40:18,266 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:40:18,268 [249] [DEBUG] [app] Starting request: urn:request:ad9d0d47-d7fa-43f5-8c9f-4dc020b95daa (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:40:18,268 [249] [DEBUG] [app] Ending request: urn:request:ad9d0d47-d7fa-43f5-8c9f-4dc020b95daa (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:ad9d0d47-d7fa-43f5-8c9f-4dc020b95daa', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:40:18,268 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:40:18 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:40:18,268 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:40:18 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:40:18,269 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:40:18,269 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:40:18,269 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:40:18,273 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:40:18,273 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:40:18,277 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:40:18,278 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:40:18,278 [247] [DEBUG] [app] Ending request: urn:request:f625f365-267c-44a9-bbb2-79f9f6d5db64 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:f625f365-267c-44a9-bbb2-79f9f6d5db64', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:40:18,279 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:40:18,279 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:40:18 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:40:18 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.019 118 0.019) securityworker stdout | 2025-09-26 08:40:18,854 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} repositorygcworker stdout | 2025-09-26 08:40:19,075 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:40:19,076 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:28.077240+00:00 (in 9.001135 seconds) repositorygcworker stdout | 2025-09-26 08:40:19,076 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:19 GMT)" (scheduled at 2025-09-26 08:40:19.075668+00:00) repositorygcworker stdout | 2025-09-26 08:40:19,076 [81] [DEBUG] [workers.queueworker] Getting work item from queue. repositorygcworker stdout | 2025-09-26 08:40:19,077 [81] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 40, 19, 76398), True, datetime.datetime(2025, 9, 26, 8, 40, 19, 76398), 0, 'repositorygc/%', 50, 1, 0]) repositorygcworker stdout | 2025-09-26 08:40:19,084 [81] [DEBUG] [workers.queueworker] No more work. repositorygcworker stdout | 2025-09-26 08:40:19,084 [81] [DEBUG] [data.database] Disconnecting from database. repositorygcworker stdout | 2025-09-26 08:40:19,084 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:19 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:40:20,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:40:20,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:30.692901+00:00 (in 9.999571 seconds) notificationworker stdout | 2025-09-26 08:40:20,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:30 GMT)" (scheduled at 2025-09-26 08:40:20.692901+00:00) notificationworker stdout | 2025-09-26 08:40:20,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:40:20,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 40, 20, 693625), True, datetime.datetime(2025, 9, 26, 8, 40, 20, 693625), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:40:20,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:40:20,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:40:20,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:30 GMT)" executed successfully blobuploadcleanupworker stdout | 2025-09-26 08:40:22,184 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} proxycacheblobworker stdout | 2025-09-26 08:40:22,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:40:22,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:26.483749+00:00 (in 4.005832 seconds) proxycacheblobworker stdout | 2025-09-26 08:40:22,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:32 GMT)" (scheduled at 2025-09-26 08:40:22.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:40:22,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:40:22,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 40, 22, 478302), True, datetime.datetime(2025, 9, 26, 8, 40, 22, 478302), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:40:22,485 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:40:22,485 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:40:22,485 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:32 GMT)" executed successfully globalpromstats stdout | 2025-09-26 08:40:25,239 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} proxycacheblobworker stdout | 2025-09-26 08:40:25,951 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} proxycacheblobworker stdout | 2025-09-26 08:40:26,483 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:40:26,484 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:32.477454+00:00 (in 5.993258 seconds) proxycacheblobworker stdout | 2025-09-26 08:40:26,484 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:26 GMT)" (scheduled at 2025-09-26 08:40:26.483749+00:00) proxycacheblobworker stdout | 2025-09-26 08:40:26,484 [69] [DEBUG] [workers.queueworker] Running watchdog. proxycacheblobworker stdout | 2025-09-26 08:40:26,484 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:26 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:40:27,047 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} gcworker stdout | 2025-09-26 08:40:27,083 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:40:27,084 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:37.085344+00:00 (in 10.001196 seconds) gcworker stdout | 2025-09-26 08:40:27,084 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:57 GMT)" (scheduled at 2025-09-26 08:40:27.083344+00:00) gcworker stdout | 2025-09-26 08:40:27,084 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:40:27,084 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:40:57 GMT)" executed successfully repositoryactioncounter stdout | 2025-09-26 08:40:27,141 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} exportactionlogsworker stdout | 2025-09-26 08:40:27,324 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} manifestsubjectbackfillworker stdout | 2025-09-26 08:40:27,853 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} repositorygcworker stdout | 2025-09-26 08:40:28,077 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:40:28,077 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:19.075668+00:00 (in 50.998018 seconds) repositorygcworker stdout | 2025-09-26 08:40:28,077 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:28 GMT)" (scheduled at 2025-09-26 08:40:28.077240+00:00) repositorygcworker stdout | 2025-09-26 08:40:28,078 [81] [DEBUG] [workers.queueworker] Running watchdog. repositorygcworker stdout | 2025-09-26 08:40:28,078 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:28 GMT)" executed successfully securityscanningnotificationworker stdout | 2025-09-26 08:40:28,587 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:40:28,587 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:10.584403+00:00 (in 41.996817 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:40:28,587 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:28 GMT)" (scheduled at 2025-09-26 08:40:28.587130+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:40:28,587 [82] [DEBUG] [workers.queueworker] Running watchdog. securityscanningnotificationworker stdout | 2025-09-26 08:40:28,587 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:28 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:40:30,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:40:30,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:37.771811+00:00 (in 7.078442 seconds) notificationworker stdout | 2025-09-26 08:40:30,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:40 GMT)" (scheduled at 2025-09-26 08:40:30.692901+00:00) notificationworker stdout | 2025-09-26 08:40:30,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:40:30,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 40, 30, 693679), True, datetime.datetime(2025, 9, 26, 8, 40, 30, 693679), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:40:30,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:40:30,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:40:30,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:40 GMT)" executed successfully proxycacheblobworker stdout | 2025-09-26 08:40:32,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:40:32,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:42.477454+00:00 (in 9.999562 seconds) proxycacheblobworker stdout | 2025-09-26 08:40:32,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:42 GMT)" (scheduled at 2025-09-26 08:40:32.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:40:32,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:40:32,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 40, 32, 478548), True, datetime.datetime(2025, 9, 26, 8, 40, 32, 478548), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:40:32,485 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:40:32,485 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:40:32,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:42 GMT)" executed successfully storagereplication stdout | 2025-09-26 08:40:32,678 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} namespacegcworker stdout | 2025-09-26 08:40:33,051 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-web stdout | 2025-09-26 08:40:33,199 [249] [DEBUG] [app] Starting request: urn:request:acee1ff7-34b5-4244-84c1-0315bbe48350 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:40:33,200 [249] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:40:33,202 [258] [DEBUG] [app] Starting request: urn:request:6ce124de-e276-434b-840c-d8384f282649 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:40:33,202 [258] [DEBUG] [app] Ending request: urn:request:6ce124de-e276-434b-840c-d8384f282649 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:6ce124de-e276-434b-840c-d8384f282649', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:40:33,203 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:40:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:40:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.001) gunicorn-web stdout | 2025-09-26 08:40:33,203 [249] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:40:33,212 [249] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:40:33,213 [249] [DEBUG] [app] Starting request: urn:request:c624d0ff-f82a-43d0-bd9c-161a7f384ffa (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:40:33,213 [249] [DEBUG] [app] Ending request: urn:request:c624d0ff-f82a-43d0-bd9c-161a7f384ffa (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:c624d0ff-f82a-43d0-bd9c-161a7f384ffa', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:40:33,214 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:40:33 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:40:33 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:40:33,214 [249] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:40:33,214 [249] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:40:33,215 [249] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:40:33,215 [249] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:40:33,219 [249] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:40:33,219 [249] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:40:33,223 [249] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:40:33,225 [249] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:40:33,225 [249] [DEBUG] [app] Ending request: urn:request:acee1ff7-34b5-4244-84c1-0315bbe48350 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:acee1ff7-34b5-4244-84c1-0315bbe48350', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:40:33,226 [249] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:40:33,226 [249] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:40:33 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:40:33 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.028 118 0.028) gunicorn-web stdout | 2025-09-26 08:40:33,261 [249] [DEBUG] [app] Starting request: urn:request:92152955-0ca0-40a9-9114-20c8805cd095 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:40:33,263 [258] [DEBUG] [app] Starting request: urn:request:ac636c9a-9bbe-4d25-9168-ce09f531626b (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:40:33,263 [258] [DEBUG] [app] Ending request: urn:request:ac636c9a-9bbe-4d25-9168-ce09f531626b (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:ac636c9a-9bbe-4d25-9168-ce09f531626b', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:40:33,263 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:40:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:40:33,264 [249] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:40:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:40:33,264 [249] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:40:33,266 [249] [DEBUG] [app] Starting request: urn:request:5e0accab-4606-46c5-ad1a-9852b26f4057 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:40:33,266 [249] [DEBUG] [app] Ending request: urn:request:5e0accab-4606-46c5-ad1a-9852b26f4057 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:5e0accab-4606-46c5-ad1a-9852b26f4057', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:40:33 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:40:33,266 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:40:33 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:40:33,266 [249] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:40:33,267 [249] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:40:33,267 [249] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:40:33,267 [249] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:40:33,270 [249] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:40:33,270 [249] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:40:33,275 [249] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:40:33,276 [249] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:40:33,277 [249] [DEBUG] [app] Ending request: urn:request:92152955-0ca0-40a9-9114-20c8805cd095 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:92152955-0ca0-40a9-9114-20c8805cd095', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:40:33,277 [249] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:40:33,277 [249] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:40:33 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:40:33 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.017 118 0.017) manifestsubjectbackfillworker stdout | 2025-09-26 08:40:33,984 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:40:33,984 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:17.985743+00:00 (in 44.000825 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:40:33,985 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:33 GMT)" (scheduled at 2025-09-26 08:40:33.984400+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:40:33,985 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."subject_backfilled" = %s) OR ("t1"."subject_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:40:33,991 [64] [DEBUG] [__main__] Manifest subject backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:40:33,991 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:40:33,991 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:33 GMT)" executed successfully autopruneworker stdout | 2025-09-26 08:40:34,442 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} expiredappspecifictokenworker stdout | 2025-09-26 08:40:34,524 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} manifestbackfillworker stdout | 2025-09-26 08:40:34,749 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} builder stdout | 2025-09-26 08:40:35,132 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} logrotateworker stdout | 2025-09-26 08:40:36,466 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gcworker stdout | 2025-09-26 08:40:37,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:40:37,085 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:57.083344+00:00 (in 19.997559 seconds) gcworker stdout | 2025-09-26 08:40:37,085 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:07 GMT)" (scheduled at 2025-09-26 08:40:37.085344+00:00) gcworker stdout | 2025-09-26 08:40:37,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gcworker stdout | 2025-09-26 08:40:37,094 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875737092, None, 1, 0]) gcworker stdout | 2025-09-26 08:40:37,095 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:40:37,095 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:07 GMT)" executed successfully securityworker stdout | 2025-09-26 08:40:37,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:40:37,683 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:41.684816+00:00 (in 4.000849 seconds) securityworker stdout | 2025-09-26 08:40:37,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:07 GMT)" (scheduled at 2025-09-26 08:40:37.683505+00:00) securityworker stdout | 2025-09-26 08:40:37,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:40:37,684 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:40:37,687 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:40:37,688 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:40:37,694 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:40:37,694 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:07 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:40:37,772 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:40:37,772 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:40.692901+00:00 (in 2.920653 seconds) notificationworker stdout | 2025-09-26 08:40:37,772 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:37 GMT)" (scheduled at 2025-09-26 08:40:37.771811+00:00) notificationworker stdout | 2025-09-26 08:40:37,772 [68] [DEBUG] [workers.queueworker] Running watchdog. notificationworker stdout | 2025-09-26 08:40:37,772 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:37 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:40:39,803 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:40:39,809 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:40:39,830 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:40:39,838 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:40:39,851 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gcworker stdout | 2025-09-26 08:40:39,926 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} securityscanningnotificationworker stdout | 2025-09-26 08:40:40,115 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} queuecleanupworker stdout | 2025-09-26 08:40:40,345 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} gunicorn-secscan stdout | 2025-09-26 08:40:40,527 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} gunicorn-secscan stdout | 2025-09-26 08:40:40,531 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:40:40,535 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} autopruneworker stdout | 2025-09-26 08:40:40,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:40:40,598 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:10.598100+00:00 (in 29.999604 seconds) autopruneworker stdout | 2025-09-26 08:40:40,598 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:10 GMT)" (scheduled at 2025-09-26 08:40:40.598100+00:00) autopruneworker stdout | 2025-09-26 08:40:40,603 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758872440603, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:40:40,606 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:40:40,606 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:40:40,607 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:10 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:40:40,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:40:40,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:41.771359+00:00 (in 1.077973 seconds) notificationworker stdout | 2025-09-26 08:40:40,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:50 GMT)" (scheduled at 2025-09-26 08:40:40.692901+00:00) notificationworker stdout | 2025-09-26 08:40:40,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:40:40,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 40, 40, 693767), True, datetime.datetime(2025, 9, 26, 8, 40, 40, 693767), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:40:40,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:40:40,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:40:40,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:50 GMT)" executed successfully chunkcleanupworker stdout | 2025-09-26 08:40:41,173 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} securityworker stdout | 2025-09-26 08:40:41,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:40:41,685 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:07.683505+00:00 (in 25.998170 seconds) securityworker stdout | 2025-09-26 08:40:41,685 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:11 GMT)" (scheduled at 2025-09-26 08:40:41.684816+00:00) securityworker stdout | 2025-09-26 08:40:41,685 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:40:41,685 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:40:41,687 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:40:41,690 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:40:41,697 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:40:41,697 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:40:41,697 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:40:41,697 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:40:41,698 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 36]) securityworker stdout | 2025-09-26 08:40:41,700 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:40:41,700 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:40:41,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:40:41,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:40:41,700 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:40:41,700 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:40:41,700 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:40:41,700 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:40:41,700 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:40:41,700 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:40:41,700 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:40:41,701 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 35, 41, 689982), 1, 36]) securityworker stdout | 2025-09-26 08:40:41,701 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:40:41,701 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:40:41,701 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:40:41,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:40:41,702 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:40:41,702 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:40:41,702 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:40:41,702 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:40:41,702 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:40:41,702 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:40:41,702 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:40:41,703 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 35, 41, 689982), 1, 36]) securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:40:41,704 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:40:41,704 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:40:41,704 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:40:41,704 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:40:41,704 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:40:41,704 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:40:41,704 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:40:41,704 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:40:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:40:41,704 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:11 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:40:41,771 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:40:41,771 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:50.692901+00:00 (in 8.921077 seconds) notificationworker stdout | 2025-09-26 08:40:41,772 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:45:41 GMT)" (scheduled at 2025-09-26 08:40:41.771359+00:00) notificationworker stdout | 2025-09-26 08:40:41,772 [68] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [False, datetime.datetime(2025, 9, 26, 8, 40, 41, 772508), 'notification/%']) notificationworker stdout | 2025-09-26 08:40:41,787 [68] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 40, 41, 772508), True, datetime.datetime(2025, 9, 26, 8, 40, 41, 772508), 0, 'notification/%']) notificationworker stdout | 2025-09-26 08:40:41,794 [68] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) AND NOT ("t1"."queue_name" IN (SELECT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s)))))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 40, 41, 772508), True, datetime.datetime(2025, 9, 26, 8, 40, 41, 772508), 0, 'notification/%', False, datetime.datetime(2025, 9, 26, 8, 40, 41, 772508), 'notification/%']) notificationworker stdout | 2025-09-26 08:40:41,795 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:40:41,795 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:45:41 GMT)" executed successfully repositorygcworker stdout | 2025-09-26 08:40:42,140 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} proxycacheblobworker stdout | 2025-09-26 08:40:42,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:40:42,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:52.477454+00:00 (in 9.999538 seconds) proxycacheblobworker stdout | 2025-09-26 08:40:42,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:52 GMT)" (scheduled at 2025-09-26 08:40:42.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:40:42,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:40:42,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 40, 42, 478327), True, datetime.datetime(2025, 9, 26, 8, 40, 42, 478327), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:40:42,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:40:42,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:40:42,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:40:52 GMT)" executed successfully servicekey stdout | 2025-09-26 08:40:42,767 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:40:42,843 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} gunicorn-registry stdout | 2025-09-26 08:40:44,356 [253] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '253'} gunicorn-registry stdout | 2025-09-26 08:40:44,365 [59] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '59'} gunicorn-registry stdout | 2025-09-26 08:40:44,386 [257] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '257'} gunicorn-registry stdout | 2025-09-26 08:40:44,422 [258] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '258'} gunicorn-registry stdout | 2025-09-26 08:40:44,427 [255] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '255'} gunicorn-registry stdout | 2025-09-26 08:40:44,442 [252] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '252'} gunicorn-registry stdout | 2025-09-26 08:40:44,450 [256] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '256'} gunicorn-registry stdout | 2025-09-26 08:40:44,455 [254] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '254'} gunicorn-registry stdout | 2025-09-26 08:40:44,459 [251] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '251'} buildlogsarchiver stdout | 2025-09-26 08:40:45,664 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} buildlogsarchiver stdout | 2025-09-26 08:40:47,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:40:47,375 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:17.375102+00:00 (in 29.999593 seconds) buildlogsarchiver stdout | 2025-09-26 08:40:47,375 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:17 GMT)" (scheduled at 2025-09-26 08:40:47.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:40:47,376 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 40, 47, 375788), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:40:47,383 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:40:47,383 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:40:47,383 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:17 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:40:48,199 [247] [DEBUG] [app] Starting request: urn:request:69c3c3d3-b239-4221-a67b-7cabe9982656 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:40:48,200 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:40:48,202 [251] [DEBUG] [app] Starting request: urn:request:2d8f9362-d5c8-4522-83e8-c0acd7401d1c (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:40:48,202 [251] [DEBUG] [app] Ending request: urn:request:2d8f9362-d5c8-4522-83e8-c0acd7401d1c (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:2d8f9362-d5c8-4522-83e8-c0acd7401d1c', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:40:48,203 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:40:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:40:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:40:48,203 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:40:48,204 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:40:48,205 [247] [DEBUG] [app] Starting request: urn:request:dddeec59-aaae-4966-af01-64fabd0568b3 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:40:48,206 [247] [DEBUG] [app] Ending request: urn:request:dddeec59-aaae-4966-af01-64fabd0568b3 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:dddeec59-aaae-4966-af01-64fabd0568b3', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:40:48,206 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:40:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:40:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.003 159 0.002) gunicorn-web stdout | 2025-09-26 08:40:48,207 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:40:48,207 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:40:48,207 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:40:48,207 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:40:48,211 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:40:48,211 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:40:48,215 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:40:48,217 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:40:48,217 [247] [DEBUG] [app] Ending request: urn:request:69c3c3d3-b239-4221-a67b-7cabe9982656 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:69c3c3d3-b239-4221-a67b-7cabe9982656', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:40:48,217 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:40:48,217 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:40:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:40:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.019 118 0.019) gunicorn-web stdout | 2025-09-26 08:40:48,261 [247] [DEBUG] [app] Starting request: urn:request:d935c4b5-725e-4534-a750-4818c2e00eb8 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:40:48,266 [251] [DEBUG] [app] Starting request: urn:request:b3c241b3-efb4-49f2-83a6-8c2ec5064e2e (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:40:48,267 [251] [DEBUG] [app] Ending request: urn:request:b3c241b3-efb4-49f2-83a6-8c2ec5064e2e (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:b3c241b3-efb4-49f2-83a6-8c2ec5064e2e', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:40:48,267 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:40:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:40:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:40:48,267 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:40:48,268 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:40:48,269 [247] [DEBUG] [app] Starting request: urn:request:543520ae-df8e-4951-b97e-027269f5b78e (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:40:48,269 [247] [DEBUG] [app] Ending request: urn:request:543520ae-df8e-4951-b97e-027269f5b78e (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:543520ae-df8e-4951-b97e-027269f5b78e', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:40:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:40:48,269 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:40:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:40:48,270 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:40:48,270 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:40:48,270 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:40:48,270 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:40:48,274 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:40:48,274 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:40:48,278 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:40:48,280 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:40:48,280 [247] [DEBUG] [app] Ending request: urn:request:d935c4b5-725e-4534-a750-4818c2e00eb8 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:d935c4b5-725e-4534-a750-4818c2e00eb8', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:40:48,281 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:40:48,281 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:40:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:40:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.021 118 0.021) securityworker stdout | 2025-09-26 08:40:48,872 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} notificationworker stdout | 2025-09-26 08:40:50,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:40:50,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:00.692901+00:00 (in 9.999569 seconds) notificationworker stdout | 2025-09-26 08:40:50,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:00 GMT)" (scheduled at 2025-09-26 08:40:50.692901+00:00) notificationworker stdout | 2025-09-26 08:40:50,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:40:50,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 40, 50, 693639), True, datetime.datetime(2025, 9, 26, 8, 40, 50, 693639), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:40:50,700 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:40:50,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:40:50,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:00 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:40:50,885 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:40:50,886 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:40:52.886914+00:00 (in 2.000878 seconds) exportactionlogsworker stdout | 2025-09-26 08:40:50,886 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:50 GMT)" (scheduled at 2025-09-26 08:40:50.885619+00:00) exportactionlogsworker stdout | 2025-09-26 08:40:50,886 [56] [DEBUG] [workers.queueworker] Getting work item from queue. exportactionlogsworker stdout | 2025-09-26 08:40:50,901 [56] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 40, 50, 886373), True, datetime.datetime(2025, 9, 26, 8, 40, 50, 886373), 0, 'exportactionlogs/%', 50, 1, 0]) exportactionlogsworker stdout | 2025-09-26 08:40:50,909 [56] [DEBUG] [workers.queueworker] No more work. exportactionlogsworker stdout | 2025-09-26 08:40:50,909 [56] [DEBUG] [data.database] Disconnecting from database. exportactionlogsworker stdout | 2025-09-26 08:40:50,909 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:50 GMT)" executed successfully blobuploadcleanupworker stdout | 2025-09-26 08:40:52,201 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} proxycacheblobworker stdout | 2025-09-26 08:40:52,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:40:52,478 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:02.477454+00:00 (in 9.999451 seconds) proxycacheblobworker stdout | 2025-09-26 08:40:52,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:02 GMT)" (scheduled at 2025-09-26 08:40:52.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:40:52,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:40:52,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 40, 52, 478377), True, datetime.datetime(2025, 9, 26, 8, 40, 52, 478377), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:40:52,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:40:52,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:40:52,487 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:02 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:40:52,887 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:40:52,887 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:50.885619+00:00 (in 57.998265 seconds) exportactionlogsworker stdout | 2025-09-26 08:40:52,887 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:52 GMT)" (scheduled at 2025-09-26 08:40:52.886914+00:00) exportactionlogsworker stdout | 2025-09-26 08:40:52,887 [56] [DEBUG] [workers.queueworker] Running watchdog. exportactionlogsworker stdout | 2025-09-26 08:40:52,887 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:52 GMT)" executed successfully globalpromstats stdout | 2025-09-26 08:40:55,255 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} proxycacheblobworker stdout | 2025-09-26 08:40:55,968 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} notificationworker stdout | 2025-09-26 08:40:57,063 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} gcworker stdout | 2025-09-26 08:40:57,083 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:40:57,084 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:07.085344+00:00 (in 10.001239 seconds) gcworker stdout | 2025-09-26 08:40:57,084 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:27 GMT)" (scheduled at 2025-09-26 08:40:57.083344+00:00) gcworker stdout | 2025-09-26 08:40:57,084 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:40:57,084 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:27 GMT)" executed successfully repositoryactioncounter stdout | 2025-09-26 08:40:57,155 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} exportactionlogsworker stdout | 2025-09-26 08:40:57,339 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} manifestsubjectbackfillworker stdout | 2025-09-26 08:40:57,868 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} namespacegcworker stdout | 2025-09-26 08:40:59,791 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:40:59,791 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:08.793810+00:00 (in 9.002232 seconds) namespacegcworker stdout | 2025-09-26 08:40:59,791 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:59 GMT)" (scheduled at 2025-09-26 08:40:59.791127+00:00) namespacegcworker stdout | 2025-09-26 08:40:59,791 [66] [DEBUG] [workers.queueworker] Getting work item from queue. namespacegcworker stdout | 2025-09-26 08:40:59,792 [66] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 40, 59, 791926), True, datetime.datetime(2025, 9, 26, 8, 40, 59, 791926), 0, 'namespacegc/%', 50, 1, 0]) namespacegcworker stdout | 2025-09-26 08:40:59,799 [66] [DEBUG] [workers.queueworker] No more work. namespacegcworker stdout | 2025-09-26 08:40:59,799 [66] [DEBUG] [data.database] Disconnecting from database. namespacegcworker stdout | 2025-09-26 08:40:59,799 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:41:59 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:41:00,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:41:00,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:10.692901+00:00 (in 9.999569 seconds) notificationworker stdout | 2025-09-26 08:41:00,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:10 GMT)" (scheduled at 2025-09-26 08:41:00.692901+00:00) notificationworker stdout | 2025-09-26 08:41:00,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:41:00,695 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 41, 0, 693702), True, datetime.datetime(2025, 9, 26, 8, 41, 0, 693702), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:41:00,703 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:41:00,703 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:41:00,703 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:10 GMT)" executed successfully proxycacheblobworker stdout | 2025-09-26 08:41:02,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:41:02,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:12.477454+00:00 (in 9.999522 seconds) proxycacheblobworker stdout | 2025-09-26 08:41:02,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:12 GMT)" (scheduled at 2025-09-26 08:41:02.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:41:02,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:41:02,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 41, 2, 478642), True, datetime.datetime(2025, 9, 26, 8, 41, 2, 478642), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:41:02,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:41:02,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:41:02,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:12 GMT)" executed successfully storagereplication stdout | 2025-09-26 08:41:02,693 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} namespacegcworker stdout | 2025-09-26 08:41:03,068 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-web stdout | 2025-09-26 08:41:03,199 [250] [DEBUG] [app] Starting request: urn:request:741eeebb-891e-4bb7-aa3e-dae480040510 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:41:03,200 [250] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:41:03,203 [251] [DEBUG] [app] Starting request: urn:request:c017ab41-ebf0-4d82-82cf-1ed32beb9f33 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:41:03,203 [251] [DEBUG] [app] Ending request: urn:request:c017ab41-ebf0-4d82-82cf-1ed32beb9f33 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:c017ab41-ebf0-4d82-82cf-1ed32beb9f33', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:41:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-registry stdout | 2025-09-26 08:41:03,203 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:41:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:41:03,204 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:41:03,204 [250] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:41:03,206 [247] [DEBUG] [app] Starting request: urn:request:7e27c494-e5ff-40bd-a31f-9d514419ffa7 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:41:03,206 [247] [DEBUG] [app] Ending request: urn:request:7e27c494-e5ff-40bd-a31f-9d514419ffa7 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:7e27c494-e5ff-40bd-a31f-9d514419ffa7', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:41:03,207 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:41:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:41:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.002) gunicorn-web stdout | 2025-09-26 08:41:03,207 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:41:03,208 [250] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:41:03,208 [250] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:41:03,208 [250] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:41:03,212 [250] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:41:03,212 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:41:03,216 [250] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:41:03,217 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:41:03,218 [250] [DEBUG] [app] Ending request: urn:request:741eeebb-891e-4bb7-aa3e-dae480040510 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:741eeebb-891e-4bb7-aa3e-dae480040510', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:41:03,218 [250] [DEBUG] [data.database] Disconnecting from database. nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:41:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.019 118 0.019) gunicorn-web stdout | 2025-09-26 08:41:03,219 [250] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:41:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" gunicorn-web stdout | 2025-09-26 08:41:03,261 [247] [DEBUG] [app] Starting request: urn:request:598f688c-5259-4579-bcc1-7d3498fc54c0 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:41:03,262 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:41:03,264 [251] [DEBUG] [app] Starting request: urn:request:97ab990a-f63e-4438-b287-370c7900848e (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:41:03,265 [251] [DEBUG] [app] Ending request: urn:request:97ab990a-f63e-4438-b287-370c7900848e (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:97ab990a-f63e-4438-b287-370c7900848e', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:41:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-registry stdout | 2025-09-26 08:41:03,265 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:41:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:41:03,265 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:41:03,266 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:41:03,267 [248] [DEBUG] [app] Starting request: urn:request:74683901-0856-45f3-b5f4-bd468fe06ca0 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:41:03,268 [248] [DEBUG] [app] Ending request: urn:request:74683901-0856-45f3-b5f4-bd468fe06ca0 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:74683901-0856-45f3-b5f4-bd468fe06ca0', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:41:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:41:03,268 [248] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:41:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:41:03,268 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:41:03,269 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:41:03,269 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:41:03,269 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:41:03,272 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:41:03,272 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:41:03,277 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:41:03,278 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:41:03,278 [247] [DEBUG] [app] Ending request: urn:request:598f688c-5259-4579-bcc1-7d3498fc54c0 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:598f688c-5259-4579-bcc1-7d3498fc54c0', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:41:03,278 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:41:03,279 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:41:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:41:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.019 118 0.018) autopruneworker stdout | 2025-09-26 08:41:04,458 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} expiredappspecifictokenworker stdout | 2025-09-26 08:41:04,538 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} manifestbackfillworker stdout | 2025-09-26 08:41:04,765 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} builder stdout | 2025-09-26 08:41:05,149 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} logrotateworker stdout | 2025-09-26 08:41:06,483 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gcworker stdout | 2025-09-26 08:41:07,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:41:07,085 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:27.083344+00:00 (in 19.997534 seconds) gcworker stdout | 2025-09-26 08:41:07,085 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:37 GMT)" (scheduled at 2025-09-26 08:41:07.085344+00:00) gcworker stdout | 2025-09-26 08:41:07,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gcworker stdout | 2025-09-26 08:41:07,092 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875767091, None, 1, 0]) gcworker stdout | 2025-09-26 08:41:07,093 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:41:07,094 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:37 GMT)" executed successfully securityworker stdout | 2025-09-26 08:41:07,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:41:07,683 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:11.684816+00:00 (in 4.000860 seconds) securityworker stdout | 2025-09-26 08:41:07,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:37 GMT)" (scheduled at 2025-09-26 08:41:07.683505+00:00) securityworker stdout | 2025-09-26 08:41:07,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:41:07,684 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:41:07,686 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:41:07,688 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:41:07,694 [86] [DEBUG] [peewee] ('SELECT Min("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:41:07,694 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:41:07,694 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:41:07,694 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:41:07,694 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:41:07,695 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 14, 22]) securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 14-22 by worker securityworker stdout | 2025-09-26 08:41:07,697 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 14-22 by worker securityworker stdout | 2025-09-26 08:41:07,697 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 14-22 securityworker stdout | 2025-09-26 08:41:07,697 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 14-22 securityworker stdout | 2025-09-26 08:41:07,697 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:41:07,697 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:41:07,697 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:41:07,697 [86] [DEBUG] [util.migrate.allocator] Right range 14-22 securityworker stdout | 2025-09-26 08:41:07,697 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-14 securityworker stdout | 2025-09-26 08:41:07,697 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 6 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 14-22 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 14-22 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Right range 14-22 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-14 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 6 securityworker stdout | 2025-09-26 08:41:07,697 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 4, 12]) securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 4-12 by worker securityworker stdout | 2025-09-26 08:41:07,698 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 4-12 by worker securityworker stdout | 2025-09-26 08:41:07,698 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 4-12 securityworker stdout | 2025-09-26 08:41:07,698 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 4-12 securityworker stdout | 2025-09-26 08:41:07,698 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stdout | 2025-09-26 08:41:07,698 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:41:07,698 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 3 total holes securityworker stdout | 2025-09-26 08:41:07,698 [86] [DEBUG] [util.migrate.allocator] Left range 4-12 securityworker stdout | 2025-09-26 08:41:07,698 [86] [DEBUG] [util.migrate.allocator] Right range 14-22 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 4-12 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 4-12 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 3 total holes securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Left range 4-12 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Right range 14-22 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 12-14 securityworker stdout | 2025-09-26 08:41:07,698 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 12-14 securityworker stdout | 2025-09-26 08:41:07,698 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 12 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 12 securityworker stdout | 2025-09-26 08:41:07,699 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 12, 20]) securityworker stdout | 2025-09-26 08:41:07,699 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 12-20 by worker securityworker stdout | 2025-09-26 08:41:07,699 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 12-20 securityworker stdout | 2025-09-26 08:41:07,699 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 4-12 securityworker stdout | 2025-09-26 08:41:07,699 [86] [DEBUG] [util.migrate.allocator] Already merged with block 4-12 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 12-20 by worker securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 12-20 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 4-12 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Already merged with block 4-12 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 14-22 securityworker stdout | 2025-09-26 08:41:07,699 [86] [DEBUG] [util.migrate.allocator] Merging with block 14-22 securityworker stdout | 2025-09-26 08:41:07,699 [86] [DEBUG] [util.migrate.allocator] Discarding 2 obsolete blocks securityworker stdout | 2025-09-26 08:41:07,700 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 4-22 securityworker stdout | 2025-09-26 08:41:07,700 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:41:07,700 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:41:07,700 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:41:07,700 [86] [DEBUG] [util.migrate.allocator] Right range 4-22 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Discarding 2 obsolete blocks securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 4-22 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Right range 4-22 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-4 securityworker stdout | 2025-09-26 08:41:07,700 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-4 securityworker stdout | 2025-09-26 08:41:07,700 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:41:07,700 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 9]) securityworker stdout | 2025-09-26 08:41:07,701 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stdout | 2025-09-26 08:41:07,701 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stdout | 2025-09-26 08:41:07,701 [86] [DEBUG] [util.migrate.allocator] Merging with block 4-22 securityworker stdout | 2025-09-26 08:41:07,701 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 22 securityworker stdout | 2025-09-26 08:41:07,701 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:41:07,701 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:41:07,701 [86] [DEBUG] [util.migrate.allocator] Total range: 22-36 securityworker stdout | 2025-09-26 08:41:07,701 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 4-22 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 22 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 22-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 22-36 securityworker stdout | 2025-09-26 08:41:07,701 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 22-36 securityworker stdout | 2025-09-26 08:41:07,701 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:41:07,702 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 28, 36]) securityworker stdout | 2025-09-26 08:41:07,702 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 28-36 by worker securityworker stdout | 2025-09-26 08:41:07,702 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 28-36 securityworker stdout | 2025-09-26 08:41:07,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 28 securityworker stdout | 2025-09-26 08:41:07,702 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:41:07,702 [86] [DEBUG] [util.migrate.allocator] Total range: 22-28 securityworker stdout | 2025-09-26 08:41:07,702 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:41:07,702 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 22-28 securityworker stdout | 2025-09-26 08:41:07,702 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 22 securityworker stdout | 2025-09-26 08:41:07,703 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 22, 30]) securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 28-36 by worker securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 28-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 28 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 22-28 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 22-28 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 22 securityworker stdout | 2025-09-26 08:41:07,703 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 22-30 by worker securityworker stdout | 2025-09-26 08:41:07,703 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 22-30 securityworker stdout | 2025-09-26 08:41:07,703 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 22 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 22-30 by worker securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 22-30 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 22 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 30 securityworker stdout | 2025-09-26 08:41:07,703 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 30 securityworker stdout | 2025-09-26 08:41:07,703 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:41:07,704 [86] [DEBUG] [util.migrate.allocator] Total range: 30-22 securityworker stdout | 2025-09-26 08:41:07,704 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:41:07,704 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:41:07,704 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:41:07,704 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:41:07,704 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 30-22 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:41:07,704 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 36, 7, 687912), 22, 30]) securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 22-30 by worker securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 22-30 securityworker stdout | 2025-09-26 08:41:07,705 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 22-30 by worker securityworker stdout | 2025-09-26 08:41:07,705 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 22-30 securityworker stdout | 2025-09-26 08:41:07,705 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 22-30 securityworker stdout | 2025-09-26 08:41:07,705 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:41:07,705 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:41:07,705 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:41:07,705 [86] [DEBUG] [util.migrate.allocator] Right range 22-30 securityworker stdout | 2025-09-26 08:41:07,705 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-22 securityworker stdout | 2025-09-26 08:41:07,705 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 14 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 22-30 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Right range 22-30 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-22 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 14 securityworker stdout | 2025-09-26 08:41:07,706 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 36, 7, 687912), 2, 10]) securityworker stdout | 2025-09-26 08:41:07,706 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 2-10 by worker securityworker stdout | 2025-09-26 08:41:07,706 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 2-10 securityworker stdout | 2025-09-26 08:41:07,706 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 2-10 securityworker stdout | 2025-09-26 08:41:07,706 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stdout | 2025-09-26 08:41:07,706 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 2-10 by worker securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 2-10 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 2-10 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 3 total holes securityworker stdout | 2025-09-26 08:41:07,707 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 3 total holes securityworker stdout | 2025-09-26 08:41:07,707 [86] [DEBUG] [util.migrate.allocator] Left range 2-10 securityworker stdout | 2025-09-26 08:41:07,707 [86] [DEBUG] [util.migrate.allocator] Right range 22-30 securityworker stdout | 2025-09-26 08:41:07,707 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 10-22 securityworker stdout | 2025-09-26 08:41:07,707 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 14 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Left range 2-10 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Right range 22-30 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 10-22 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 14 securityworker stdout | 2025-09-26 08:41:07,707 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 36, 7, 687912), 11, 19]) securityworker stdout | 2025-09-26 08:41:07,708 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 11-19 by worker securityworker stdout | 2025-09-26 08:41:07,708 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 11-19 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 11-19 by worker securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 11-19 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 11-19 securityworker stdout | 2025-09-26 08:41:07,708 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 11-19 securityworker stdout | 2025-09-26 08:41:07,708 [86] [DEBUG] [util.migrate.allocator] Total blocks: 3 securityworker stdout | 2025-09-26 08:41:07,708 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:41:07,708 [86] [DEBUG] [util.migrate.allocator] Selected random hole 2 with 4 total holes securityworker stdout | 2025-09-26 08:41:07,708 [86] [DEBUG] [util.migrate.allocator] Left range 11-19 securityworker stdout | 2025-09-26 08:41:07,708 [86] [DEBUG] [util.migrate.allocator] Right range 22-30 securityworker stdout | 2025-09-26 08:41:07,708 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-22 securityworker stdout | 2025-09-26 08:41:07,708 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 19 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 3 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 2 with 4 total holes securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Left range 11-19 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Right range 22-30 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-22 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 19 securityworker stdout | 2025-09-26 08:41:07,709 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 36, 7, 687912), 19, 27]) securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 19-27 by worker securityworker stdout | 2025-09-26 08:41:07,709 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 19-27 by worker securityworker stdout | 2025-09-26 08:41:07,710 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 19-27 securityworker stdout | 2025-09-26 08:41:07,710 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 11-19 securityworker stdout | 2025-09-26 08:41:07,710 [86] [DEBUG] [util.migrate.allocator] Already merged with block 11-19 securityworker stdout | 2025-09-26 08:41:07,710 [86] [DEBUG] [util.migrate.allocator] Merging with block 22-30 securityworker stdout | 2025-09-26 08:41:07,710 [86] [DEBUG] [util.migrate.allocator] Discarding 2 obsolete blocks securityworker stdout | 2025-09-26 08:41:07,710 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 11-30 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 19-27 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 11-19 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Already merged with block 11-19 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 22-30 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Discarding 2 obsolete blocks securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 11-30 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stdout | 2025-09-26 08:41:07,710 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stdout | 2025-09-26 08:41:07,710 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:41:07,710 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 3 total holes securityworker stdout | 2025-09-26 08:41:07,710 [86] [DEBUG] [util.migrate.allocator] Right range 2-10 securityworker stdout | 2025-09-26 08:41:07,710 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:41:07,710 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 3 total holes securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Right range 2-10 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:41:07,710 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 36, 7, 687912), 1, 9]) securityworker stdout | 2025-09-26 08:41:07,711 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stdout | 2025-09-26 08:41:07,711 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stdout | 2025-09-26 08:41:07,711 [86] [DEBUG] [util.migrate.allocator] Merging with block 2-10 securityworker stdout | 2025-09-26 08:41:07,711 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 10 securityworker stdout | 2025-09-26 08:41:07,711 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:41:07,711 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:41:07,711 [86] [DEBUG] [util.migrate.allocator] Total range: 10-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 2-10 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 10 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 10-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stdout | 2025-09-26 08:41:07,711 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stdout | 2025-09-26 08:41:07,711 [86] [DEBUG] [util.migrate.allocator] Left range 11-30 securityworker stdout | 2025-09-26 08:41:07,711 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 30-36 securityworker stdout | 2025-09-26 08:41:07,711 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 30 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Left range 11-30 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 30-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 30 securityworker stdout | 2025-09-26 08:41:07,712 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 36, 7, 687912), 30, 36]) securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 30-36 by worker securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 30-36 securityworker stdout | 2025-09-26 08:41:07,713 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 30-36 by worker securityworker stdout | 2025-09-26 08:41:07,713 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 30-36 securityworker stdout | 2025-09-26 08:41:07,713 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 11-30 securityworker stdout | 2025-09-26 08:41:07,713 [86] [DEBUG] [util.migrate.allocator] Already merged with block 11-30 securityworker stdout | 2025-09-26 08:41:07,713 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 11 securityworker stdout | 2025-09-26 08:41:07,713 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:41:07,713 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:41:07,713 [86] [DEBUG] [util.migrate.allocator] Total range: 10-11 securityworker stdout | 2025-09-26 08:41:07,713 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 11-30 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Already merged with block 11-30 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 11 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 10-11 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 10-11 securityworker stdout | 2025-09-26 08:41:07,713 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 10-11 securityworker stdout | 2025-09-26 08:41:07,713 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 10 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 10 securityworker stdout | 2025-09-26 08:41:07,714 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 36, 7, 687912), 10, 18]) securityworker stdout | 2025-09-26 08:41:07,714 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 10-18 by worker securityworker stdout | 2025-09-26 08:41:07,714 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 10-18 securityworker stdout | 2025-09-26 08:41:07,714 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 10 securityworker stdout | 2025-09-26 08:41:07,714 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 18 securityworker stdout | 2025-09-26 08:41:07,714 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 10-18 by worker securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 10-18 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 10 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 18 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:41:07,714 [86] [DEBUG] [util.migrate.allocator] Total range: 18-10 securityworker stdout | 2025-09-26 08:41:07,714 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:41:07,714 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:41:07,715 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:41:07,715 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:41:07,715 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 18-10 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:41:07,716 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 36, 7, 687912), 11, 19]) securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 11-19 by worker securityworker stdout | 2025-09-26 08:41:07,716 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 11-19 by worker securityworker stdout | 2025-09-26 08:41:07,716 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 11-19 securityworker stdout | 2025-09-26 08:41:07,716 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 11-19 securityworker stdout | 2025-09-26 08:41:07,716 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:41:07,717 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:41:07,717 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:41:07,717 [86] [DEBUG] [util.migrate.allocator] Right range 11-19 securityworker stdout | 2025-09-26 08:41:07,717 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-11 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 11-19 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 11-19 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Right range 11-19 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-11 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 3 securityworker stdout | 2025-09-26 08:41:07,717 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 3 securityworker stdout | 2025-09-26 08:41:07,717 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 36, 7, 687912), 1, 9]) securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stdout | 2025-09-26 08:41:07,718 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stdout | 2025-09-26 08:41:07,718 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stdout | 2025-09-26 08:41:07,718 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 9 securityworker stdout | 2025-09-26 08:41:07,718 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:41:07,718 [86] [DEBUG] [util.migrate.allocator] Total range: 9-36 securityworker stdout | 2025-09-26 08:41:07,718 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 9 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 9-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Right range 11-19 securityworker stdout | 2025-09-26 08:41:07,718 [86] [DEBUG] [util.migrate.allocator] Right range 11-19 securityworker stdout | 2025-09-26 08:41:07,718 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 9-11 securityworker stdout | 2025-09-26 08:41:07,719 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 9 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 9-11 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 9 securityworker stdout | 2025-09-26 08:41:07,719 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 36, 7, 687912), 9, 17]) securityworker stdout | 2025-09-26 08:41:07,720 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 9-17 by worker securityworker stdout | 2025-09-26 08:41:07,720 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 9-17 securityworker stdout | 2025-09-26 08:41:07,720 [86] [DEBUG] [util.migrate.allocator] Merging with block 11-19 securityworker stdout | 2025-09-26 08:41:07,720 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 19 securityworker stdout | 2025-09-26 08:41:07,720 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 9-17 by worker securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 9-17 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 11-19 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 19 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:41:07,720 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:41:07,720 [86] [DEBUG] [util.migrate.allocator] Total range: 19-36 securityworker stdout | 2025-09-26 08:41:07,720 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:41:07,720 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-36 securityworker stdout | 2025-09-26 08:41:07,720 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 19-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:41:07,721 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 36, 7, 687912), 20, 28]) securityworker stdout | 2025-09-26 08:41:07,721 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 20-28 by worker securityworker stdout | 2025-09-26 08:41:07,721 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 20-28 securityworker stdout | 2025-09-26 08:41:07,721 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 20-28 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 20-28 by worker securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 20-28 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 20-28 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:41:07,721 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:41:07,721 [86] [DEBUG] [util.migrate.allocator] Total range: 19-36 securityworker stdout | 2025-09-26 08:41:07,721 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stdout | 2025-09-26 08:41:07,721 [86] [DEBUG] [util.migrate.allocator] Left range 20-28 securityworker stdout | 2025-09-26 08:41:07,721 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 28-36 securityworker stdout | 2025-09-26 08:41:07,721 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 19-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Left range 20-28 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 28-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:41:07,722 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 36, 7, 687912), 28, 36]) securityworker stdout | 2025-09-26 08:41:07,723 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 28-36 by worker securityworker stdout | 2025-09-26 08:41:07,723 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 28-36 securityworker stdout | 2025-09-26 08:41:07,723 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 20-28 securityworker stdout | 2025-09-26 08:41:07,723 [86] [DEBUG] [util.migrate.allocator] Already merged with block 20-28 securityworker stdout | 2025-09-26 08:41:07,723 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 20 securityworker stdout | 2025-09-26 08:41:07,723 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:41:07,723 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 28-36 by worker securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 28-36 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 20-28 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Already merged with block 20-28 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 20 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 19-20 securityworker stdout | 2025-09-26 08:41:07,723 [86] [DEBUG] [util.migrate.allocator] Total range: 19-20 securityworker stdout | 2025-09-26 08:41:07,723 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:41:07,723 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-20 securityworker stdout | 2025-09-26 08:41:07,723 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 19 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 19-20 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 19 securityworker stdout | 2025-09-26 08:41:07,724 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 36, 7, 687912), 19, 27]) securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 19-27 by worker securityworker stdout | 2025-09-26 08:41:07,725 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 19-27 by worker securityworker stdout | 2025-09-26 08:41:07,725 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 19-27 securityworker stdout | 2025-09-26 08:41:07,725 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 19 securityworker stdout | 2025-09-26 08:41:07,725 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 27 securityworker stdout | 2025-09-26 08:41:07,725 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:41:07,725 [86] [DEBUG] [util.migrate.allocator] Total range: 27-19 securityworker stdout | 2025-09-26 08:41:07,725 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:41:07,725 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 19-27 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 19 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 27 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] Total range: 27-19 securityworker stderr | 2025-09-26 08:41:07 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:41:07,725 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:37 GMT)" executed successfully namespacegcworker stdout | 2025-09-26 08:41:08,794 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:41:08,794 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:26.793442+00:00 (in 17.999152 seconds) namespacegcworker stdout | 2025-09-26 08:41:08,794 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:08 GMT)" (scheduled at 2025-09-26 08:41:08.793810+00:00) namespacegcworker stdout | 2025-09-26 08:41:08,794 [66] [DEBUG] [workers.queueworker] Running watchdog. namespacegcworker stdout | 2025-09-26 08:41:08,794 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:08 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:41:09,820 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:41:09,826 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:41:09,847 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:41:09,854 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:41:09,867 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gcworker stdout | 2025-09-26 08:41:09,942 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} securityscanningnotificationworker stdout | 2025-09-26 08:41:10,131 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} queuecleanupworker stdout | 2025-09-26 08:41:10,360 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} gunicorn-secscan stdout | 2025-09-26 08:41:10,545 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} gunicorn-secscan stdout | 2025-09-26 08:41:10,549 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:41:10,553 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} securityscanningnotificationworker stdout | 2025-09-26 08:41:10,584 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:41:10,584 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:28.587130+00:00 (in 18.002325 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:41:10,584 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:10 GMT)" (scheduled at 2025-09-26 08:41:10.584403+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:41:10,585 [82] [DEBUG] [workers.queueworker] Getting work item from queue. securityscanningnotificationworker stdout | 2025-09-26 08:41:10,585 [82] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 41, 10, 585126), True, datetime.datetime(2025, 9, 26, 8, 41, 10, 585126), 0, 'secscanv4/%', 50, 1, 0]) securityscanningnotificationworker stdout | 2025-09-26 08:41:10,592 [82] [DEBUG] [workers.queueworker] No more work. securityscanningnotificationworker stdout | 2025-09-26 08:41:10,592 [82] [DEBUG] [data.database] Disconnecting from database. securityscanningnotificationworker stdout | 2025-09-26 08:41:10,592 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:10 GMT)" executed successfully autopruneworker stdout | 2025-09-26 08:41:10,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:41:10,598 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:40.598100+00:00 (in 29.999557 seconds) autopruneworker stdout | 2025-09-26 08:41:10,598 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:40 GMT)" (scheduled at 2025-09-26 08:41:10.598100+00:00) autopruneworker stdout | 2025-09-26 08:41:10,603 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758872470602, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:41:10,605 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:41:10,605 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:41:10,605 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:40 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:41:10,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:41:10,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:20.692901+00:00 (in 9.999538 seconds) notificationworker stdout | 2025-09-26 08:41:10,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:20 GMT)" (scheduled at 2025-09-26 08:41:10.692901+00:00) notificationworker stdout | 2025-09-26 08:41:10,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:41:10,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 41, 10, 693703), True, datetime.datetime(2025, 9, 26, 8, 41, 10, 693703), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:41:10,700 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:41:10,700 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:41:10,700 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:20 GMT)" executed successfully chunkcleanupworker stdout | 2025-09-26 08:41:11,189 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} securityworker stdout | 2025-09-26 08:41:11,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:41:11,685 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:37.683505+00:00 (in 25.998225 seconds) securityworker stdout | 2025-09-26 08:41:11,685 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:41 GMT)" (scheduled at 2025-09-26 08:41:11.684816+00:00) securityworker stdout | 2025-09-26 08:41:11,685 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:41:11,685 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:41:11,687 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:41:11,690 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:41:11,695 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:41:11,695 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:41:11,696 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:41:11,696 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:41:11,697 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 36]) securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:41:11,699 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:41:11,699 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:41:11,699 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:41:11,699 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:41:11,699 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:41:11,699 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:41:11,699 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:41:11,699 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:41:11,699 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:41:11,699 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:41:11,699 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:41:11,700 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 36, 11, 689928), 1, 36]) securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:41:11,701 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:41:11,701 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:41:11,701 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:41:11,701 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:41:11,701 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:41:11,701 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:41:11,701 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:41:11,701 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:41:11,701 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:41:11,701 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:41:11,701 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:41:11,702 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 36, 11, 689928), 1, 36]) securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:41:11,703 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:41:11,703 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:41:11,703 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:41:11,703 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:41:11,703 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:41:11,703 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:41:11,703 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:41:11,703 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:41:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:41:11,704 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:41 GMT)" executed successfully repositorygcworker stdout | 2025-09-26 08:41:12,158 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} proxycacheblobworker stdout | 2025-09-26 08:41:12,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:41:12,478 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:22.477454+00:00 (in 9.999477 seconds) proxycacheblobworker stdout | 2025-09-26 08:41:12,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:22 GMT)" (scheduled at 2025-09-26 08:41:12.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:41:12,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:41:12,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 41, 12, 478343), True, datetime.datetime(2025, 9, 26, 8, 41, 12, 478343), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:41:12,485 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:41:12,485 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:41:12,485 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:22 GMT)" executed successfully servicekey stdout | 2025-09-26 08:41:12,783 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:41:12,859 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} gunicorn-registry stdout | 2025-09-26 08:41:14,373 [253] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '253'} gunicorn-registry stdout | 2025-09-26 08:41:14,383 [59] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '59'} gunicorn-registry stdout | 2025-09-26 08:41:14,407 [257] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '257'} gunicorn-registry stdout | 2025-09-26 08:41:14,454 [255] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '255'} gunicorn-registry stdout | 2025-09-26 08:41:14,460 [258] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '258'} gunicorn-registry stdout | 2025-09-26 08:41:14,466 [252] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '252'} gunicorn-registry stdout | 2025-09-26 08:41:14,471 [256] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '256'} gunicorn-registry stdout | 2025-09-26 08:41:14,481 [251] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '251'} gunicorn-registry stdout | 2025-09-26 08:41:14,492 [254] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '254'} buildlogsarchiver stdout | 2025-09-26 08:41:15,682 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} buildlogsarchiver stdout | 2025-09-26 08:41:17,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:41:17,375 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:47.375102+00:00 (in 29.999544 seconds) buildlogsarchiver stdout | 2025-09-26 08:41:17,375 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:47 GMT)" (scheduled at 2025-09-26 08:41:17.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:41:17,376 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 41, 17, 375868), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:41:17,384 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:41:17,384 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:41:17,384 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:47 GMT)" executed successfully manifestsubjectbackfillworker stdout | 2025-09-26 08:41:17,985 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:41:17,986 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:33.984400+00:00 (in 15.998194 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:41:17,986 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:17 GMT)" (scheduled at 2025-09-26 08:41:17.985743+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:41:17,987 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."artifact_type_backfilled" = %s) OR ("t1"."artifact_type_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:41:17,993 [64] [DEBUG] [__main__] Manifest artifact_type backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:41:17,993 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:41:17,993 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:17 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:41:18,199 [250] [DEBUG] [app] Starting request: urn:request:f9514ae7-c0a0-4d2d-a9ec-340b62b02eda (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:41:18,207 [250] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:41:18,209 [251] [DEBUG] [app] Starting request: urn:request:7fdfb8a8-0f96-4e59-82be-bfc816d5f33b (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:41:18,210 [251] [DEBUG] [app] Ending request: urn:request:7fdfb8a8-0f96-4e59-82be-bfc816d5f33b (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:7fdfb8a8-0f96-4e59-82be-bfc816d5f33b', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:41:18,210 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:41:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:41:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.002) gunicorn-web stdout | 2025-09-26 08:41:18,210 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:41:18,211 [250] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:41:18,212 [250] [DEBUG] [app] Starting request: urn:request:8d07bb79-0e36-4af1-8066-97281b15b22b (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:41:18,213 [250] [DEBUG] [app] Ending request: urn:request:8d07bb79-0e36-4af1-8066-97281b15b22b (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:8d07bb79-0e36-4af1-8066-97281b15b22b', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:41:18 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:41:18,213 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:41:18 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:41:18,214 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:41:18,214 [250] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:41:18,214 [250] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:41:18,214 [250] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:41:18,218 [250] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:41:18,218 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:41:18,222 [250] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:41:18,223 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:41:18,224 [250] [DEBUG] [app] Ending request: urn:request:f9514ae7-c0a0-4d2d-a9ec-340b62b02eda (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:f9514ae7-c0a0-4d2d-a9ec-340b62b02eda', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:41:18,224 [250] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:41:18,224 [250] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:41:18 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:41:18 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.026 118 0.026) gunicorn-web stdout | 2025-09-26 08:41:18,261 [247] [DEBUG] [app] Starting request: urn:request:4a66dfba-c407-47fb-9ba2-3929e51f81d7 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:41:18,262 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:41:18,264 [257] [DEBUG] [app] Starting request: urn:request:5ca7d2df-aae8-4cf2-9cad-4089bc4455e6 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:41:18,264 [257] [DEBUG] [app] Ending request: urn:request:5ca7d2df-aae8-4cf2-9cad-4089bc4455e6 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:5ca7d2df-aae8-4cf2-9cad-4089bc4455e6', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:41:18,264 [257] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:41:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:41:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:41:18,265 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:41:18,266 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:41:18,267 [250] [DEBUG] [app] Starting request: urn:request:a47c8d2e-dd3e-4766-83b4-e4d6561bc38b (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:41:18,267 [250] [DEBUG] [app] Ending request: urn:request:a47c8d2e-dd3e-4766-83b4-e4d6561bc38b (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:a47c8d2e-dd3e-4766-83b4-e4d6561bc38b', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:41:18,267 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:41:18 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:41:18,267 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:41:18 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:41:18,268 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:41:18,268 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:41:18,268 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:41:18,271 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:41:18,271 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:41:18,276 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:41:18,276 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:41:18,277 [247] [DEBUG] [app] Ending request: urn:request:4a66dfba-c407-47fb-9ba2-3929e51f81d7 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:4a66dfba-c407-47fb-9ba2-3929e51f81d7', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:41:18,277 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:41:18,278 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:41:18 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:41:18 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.018 118 0.018) securityworker stdout | 2025-09-26 08:41:18,889 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} repositorygcworker stdout | 2025-09-26 08:41:19,075 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:41:19,076 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:28.077240+00:00 (in 9.001146 seconds) repositorygcworker stdout | 2025-09-26 08:41:19,076 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:19 GMT)" (scheduled at 2025-09-26 08:41:19.075668+00:00) repositorygcworker stdout | 2025-09-26 08:41:19,076 [81] [DEBUG] [workers.queueworker] Getting work item from queue. repositorygcworker stdout | 2025-09-26 08:41:19,076 [81] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 41, 19, 76406), True, datetime.datetime(2025, 9, 26, 8, 41, 19, 76406), 0, 'repositorygc/%', 50, 1, 0]) repositorygcworker stdout | 2025-09-26 08:41:19,083 [81] [DEBUG] [workers.queueworker] No more work. repositorygcworker stdout | 2025-09-26 08:41:19,083 [81] [DEBUG] [data.database] Disconnecting from database. repositorygcworker stdout | 2025-09-26 08:41:19,083 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:19 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:41:20,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:41:20,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:30.692901+00:00 (in 9.999543 seconds) notificationworker stdout | 2025-09-26 08:41:20,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:30 GMT)" (scheduled at 2025-09-26 08:41:20.692901+00:00) notificationworker stdout | 2025-09-26 08:41:20,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:41:20,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 41, 20, 693674), True, datetime.datetime(2025, 9, 26, 8, 41, 20, 693674), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:41:20,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:41:20,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:41:20,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:30 GMT)" executed successfully blobuploadcleanupworker stdout | 2025-09-26 08:41:22,220 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} proxycacheblobworker stdout | 2025-09-26 08:41:22,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:41:22,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:26.483749+00:00 (in 4.005805 seconds) proxycacheblobworker stdout | 2025-09-26 08:41:22,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:32 GMT)" (scheduled at 2025-09-26 08:41:22.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:41:22,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:41:22,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 41, 22, 478256), True, datetime.datetime(2025, 9, 26, 8, 41, 22, 478256), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:41:22,485 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:41:22,485 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:41:22,485 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:32 GMT)" executed successfully globalpromstats stdout | 2025-09-26 08:41:25,270 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} proxycacheblobworker stdout | 2025-09-26 08:41:25,984 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} proxycacheblobworker stdout | 2025-09-26 08:41:26,483 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:41:26,484 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:32.477454+00:00 (in 5.993224 seconds) proxycacheblobworker stdout | 2025-09-26 08:41:26,485 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:26 GMT)" (scheduled at 2025-09-26 08:41:26.483749+00:00) proxycacheblobworker stdout | 2025-09-26 08:41:26,485 [69] [DEBUG] [workers.queueworker] Running watchdog. proxycacheblobworker stdout | 2025-09-26 08:41:26,485 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:26 GMT)" executed successfully namespacegcworker stdout | 2025-09-26 08:41:26,793 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:41:26,793 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:59.791127+00:00 (in 32.997289 seconds) namespacegcworker stdout | 2025-09-26 08:41:26,794 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:46:26 GMT)" (scheduled at 2025-09-26 08:41:26.793442+00:00) namespacegcworker stdout | 2025-09-26 08:41:26,794 [66] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [False, datetime.datetime(2025, 9, 26, 8, 41, 26, 794136), 'namespacegc/%']) namespacegcworker stdout | 2025-09-26 08:41:26,801 [66] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 41, 26, 794136), True, datetime.datetime(2025, 9, 26, 8, 41, 26, 794136), 0, 'namespacegc/%']) namespacegcworker stdout | 2025-09-26 08:41:26,803 [66] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) AND NOT ("t1"."queue_name" IN (SELECT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s)))))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 41, 26, 794136), True, datetime.datetime(2025, 9, 26, 8, 41, 26, 794136), 0, 'namespacegc/%', False, datetime.datetime(2025, 9, 26, 8, 41, 26, 794136), 'namespacegc/%']) namespacegcworker stdout | 2025-09-26 08:41:26,804 [66] [DEBUG] [data.database] Disconnecting from database. namespacegcworker stdout | 2025-09-26 08:41:26,804 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:46:26 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:41:27,079 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} gcworker stdout | 2025-09-26 08:41:27,083 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:41:27,084 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:37.085344+00:00 (in 10.001248 seconds) gcworker stdout | 2025-09-26 08:41:27,084 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:57 GMT)" (scheduled at 2025-09-26 08:41:27.083344+00:00) gcworker stdout | 2025-09-26 08:41:27,084 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:41:27,084 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:41:57 GMT)" executed successfully repositoryactioncounter stdout | 2025-09-26 08:41:27,169 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} exportactionlogsworker stdout | 2025-09-26 08:41:27,353 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} manifestsubjectbackfillworker stdout | 2025-09-26 08:41:27,886 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} repositorygcworker stdout | 2025-09-26 08:41:28,077 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:41:28,077 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:19.075668+00:00 (in 50.998000 seconds) repositorygcworker stdout | 2025-09-26 08:41:28,078 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:28 GMT)" (scheduled at 2025-09-26 08:41:28.077240+00:00) repositorygcworker stdout | 2025-09-26 08:41:28,078 [81] [DEBUG] [workers.queueworker] Running watchdog. repositorygcworker stdout | 2025-09-26 08:41:28,078 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:28 GMT)" executed successfully securityscanningnotificationworker stdout | 2025-09-26 08:41:28,587 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:41:28,587 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:39.586780+00:00 (in 10.998803 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:41:28,588 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:28 GMT)" (scheduled at 2025-09-26 08:41:28.587130+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:41:28,588 [82] [DEBUG] [workers.queueworker] Running watchdog. securityscanningnotificationworker stdout | 2025-09-26 08:41:28,589 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:28 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:41:30,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:41:30,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:37.771811+00:00 (in 7.078455 seconds) notificationworker stdout | 2025-09-26 08:41:30,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:40 GMT)" (scheduled at 2025-09-26 08:41:30.692901+00:00) notificationworker stdout | 2025-09-26 08:41:30,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:41:30,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 41, 30, 693703), True, datetime.datetime(2025, 9, 26, 8, 41, 30, 693703), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:41:30,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:41:30,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:41:30,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:40 GMT)" executed successfully proxycacheblobworker stdout | 2025-09-26 08:41:32,478 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:41:32,478 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:42.477454+00:00 (in 9.998584 seconds) proxycacheblobworker stdout | 2025-09-26 08:41:32,479 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:42 GMT)" (scheduled at 2025-09-26 08:41:32.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:41:32,479 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:41:32,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 41, 32, 479161), True, datetime.datetime(2025, 9, 26, 8, 41, 32, 479161), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:41:32,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:41:32,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:41:32,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:42 GMT)" executed successfully storagereplication stdout | 2025-09-26 08:41:32,707 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} namespacegcworker stdout | 2025-09-26 08:41:33,084 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-web stdout | 2025-09-26 08:41:33,199 [249] [DEBUG] [app] Starting request: urn:request:54169f6d-9273-4041-a00c-cd9950315b51 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:41:33,200 [249] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:41:33,202 [258] [DEBUG] [app] Starting request: urn:request:982a6c07-3646-47a6-90cf-29dacdc75fcc (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:41:33,202 [258] [DEBUG] [app] Ending request: urn:request:982a6c07-3646-47a6-90cf-29dacdc75fcc (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:982a6c07-3646-47a6-90cf-29dacdc75fcc', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:41:33,202 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:41:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:41:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:41:33,203 [249] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:41:33,204 [249] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:41:33,205 [249] [DEBUG] [app] Starting request: urn:request:2b6c111e-b25f-4625-8611-581d49009d7f (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:41:33,206 [249] [DEBUG] [app] Ending request: urn:request:2b6c111e-b25f-4625-8611-581d49009d7f (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:2b6c111e-b25f-4625-8611-581d49009d7f', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:41:33 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:41:33,206 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:41:33 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:41:33,206 [249] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:41:33,206 [249] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:41:33,207 [249] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:41:33,207 [249] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:41:33,211 [249] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:41:33,211 [249] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:41:33,215 [249] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:41:33,217 [249] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:41:33,217 [249] [DEBUG] [app] Ending request: urn:request:54169f6d-9273-4041-a00c-cd9950315b51 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:54169f6d-9273-4041-a00c-cd9950315b51', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:41:33,217 [249] [DEBUG] [data.database] Disconnecting from database. nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:41:33 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.020 118 0.020) gunicorn-web stdout | 2025-09-26 08:41:33,218 [249] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:41:33 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" gunicorn-web stdout | 2025-09-26 08:41:33,261 [247] [DEBUG] [app] Starting request: urn:request:ad905608-a20a-4d10-b5b0-a6926670974f (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:41:33,265 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:41:33,267 [251] [DEBUG] [app] Starting request: urn:request:a288fedf-3ce7-4975-bbdd-054f6aa303cc (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:41:33,267 [251] [DEBUG] [app] Ending request: urn:request:a288fedf-3ce7-4975-bbdd-054f6aa303cc (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:a288fedf-3ce7-4975-bbdd-054f6aa303cc', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:41:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-registry stdout | 2025-09-26 08:41:33,267 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:41:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:41:33,267 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:41:33,268 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:41:33,270 [249] [DEBUG] [app] Starting request: urn:request:b14acfd3-5cae-48c2-a998-65cced688d65 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:41:33,270 [249] [DEBUG] [app] Ending request: urn:request:b14acfd3-5cae-48c2-a998-65cced688d65 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:b14acfd3-5cae-48c2-a998-65cced688d65', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:41:33,270 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:41:33 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:41:33,270 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:41:33 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:41:33,271 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:41:33,271 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:41:33,271 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:41:33,275 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:41:33,275 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:41:33,280 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:41:33,281 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:41:33,282 [247] [DEBUG] [app] Ending request: urn:request:ad905608-a20a-4d10-b5b0-a6926670974f (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:ad905608-a20a-4d10-b5b0-a6926670974f', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:41:33,282 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:41:33,282 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:41:33 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:41:33 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.022 118 0.022) manifestsubjectbackfillworker stdout | 2025-09-26 08:41:33,984 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:41:33,984 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:17.985743+00:00 (in 44.000903 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:41:33,984 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:33 GMT)" (scheduled at 2025-09-26 08:41:33.984400+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:41:33,985 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."subject_backfilled" = %s) OR ("t1"."subject_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:41:33,992 [64] [DEBUG] [__main__] Manifest subject backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:41:33,992 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:41:33,992 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:33 GMT)" executed successfully autopruneworker stdout | 2025-09-26 08:41:34,475 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} expiredappspecifictokenworker stdout | 2025-09-26 08:41:34,551 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} manifestbackfillworker stdout | 2025-09-26 08:41:34,781 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} builder stdout | 2025-09-26 08:41:35,166 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} logrotateworker stdout | 2025-09-26 08:41:36,498 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gcworker stdout | 2025-09-26 08:41:37,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:41:37,085 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:57.083344+00:00 (in 19.997552 seconds) gcworker stdout | 2025-09-26 08:41:37,085 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:07 GMT)" (scheduled at 2025-09-26 08:41:37.085344+00:00) gcworker stdout | 2025-09-26 08:41:37,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gcworker stdout | 2025-09-26 08:41:37,092 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875797092, None, 1, 0]) gcworker stdout | 2025-09-26 08:41:37,094 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:41:37,094 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:07 GMT)" executed successfully securityworker stdout | 2025-09-26 08:41:37,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:41:37,683 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:41.684816+00:00 (in 4.000886 seconds) securityworker stdout | 2025-09-26 08:41:37,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:07 GMT)" (scheduled at 2025-09-26 08:41:37.683505+00:00) securityworker stdout | 2025-09-26 08:41:37,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:41:37,684 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:41:37,686 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:41:37,688 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:41:37,694 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:41:37,694 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:07 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:41:37,772 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:41:37,772 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:40.692901+00:00 (in 2.920627 seconds) notificationworker stdout | 2025-09-26 08:41:37,772 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:37 GMT)" (scheduled at 2025-09-26 08:41:37.771811+00:00) notificationworker stdout | 2025-09-26 08:41:37,772 [68] [DEBUG] [workers.queueworker] Running watchdog. notificationworker stdout | 2025-09-26 08:41:37,772 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:37 GMT)" executed successfully securityscanningnotificationworker stdout | 2025-09-26 08:41:39,587 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:41:39,587 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:10.584403+00:00 (in 30.996923 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:41:39,587 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:46:39 GMT)" (scheduled at 2025-09-26 08:41:39.586780+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:41:39,588 [82] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [False, datetime.datetime(2025, 9, 26, 8, 41, 39, 587753), 'secscanv4/%']) securityscanningnotificationworker stdout | 2025-09-26 08:41:39,594 [82] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 41, 39, 587753), True, datetime.datetime(2025, 9, 26, 8, 41, 39, 587753), 0, 'secscanv4/%']) securityscanningnotificationworker stdout | 2025-09-26 08:41:39,596 [82] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) AND NOT ("t1"."queue_name" IN (SELECT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s)))))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 41, 39, 587753), True, datetime.datetime(2025, 9, 26, 8, 41, 39, 587753), 0, 'secscanv4/%', False, datetime.datetime(2025, 9, 26, 8, 41, 39, 587753), 'secscanv4/%']) securityscanningnotificationworker stdout | 2025-09-26 08:41:39,597 [82] [DEBUG] [data.database] Disconnecting from database. securityscanningnotificationworker stdout | 2025-09-26 08:41:39,597 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:46:39 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:41:39,838 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:41:39,844 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:41:39,862 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:41:39,870 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:41:39,882 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gcworker stdout | 2025-09-26 08:41:39,957 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} securityscanningnotificationworker stdout | 2025-09-26 08:41:40,147 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} queuecleanupworker stdout | 2025-09-26 08:41:40,375 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} gunicorn-secscan stdout | 2025-09-26 08:41:40,564 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} gunicorn-secscan stdout | 2025-09-26 08:41:40,569 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:41:40,572 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} autopruneworker stdout | 2025-09-26 08:41:40,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:41:40,598 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:10.598100+00:00 (in 29.999597 seconds) autopruneworker stdout | 2025-09-26 08:41:40,598 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:10 GMT)" (scheduled at 2025-09-26 08:41:40.598100+00:00) autopruneworker stdout | 2025-09-26 08:41:40,603 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758872500602, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:41:40,606 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:41:40,607 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:41:40,607 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:10 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:41:40,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:41:40,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:50.692901+00:00 (in 9.999196 seconds) notificationworker stdout | 2025-09-26 08:41:40,694 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:50 GMT)" (scheduled at 2025-09-26 08:41:40.692901+00:00) notificationworker stdout | 2025-09-26 08:41:40,694 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:41:40,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 41, 40, 694389), True, datetime.datetime(2025, 9, 26, 8, 41, 40, 694389), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:41:40,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:41:40,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:41:40,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:50 GMT)" executed successfully chunkcleanupworker stdout | 2025-09-26 08:41:41,204 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} securityworker stdout | 2025-09-26 08:41:41,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:41:41,685 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:07.683505+00:00 (in 25.997807 seconds) securityworker stdout | 2025-09-26 08:41:41,685 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:11 GMT)" (scheduled at 2025-09-26 08:41:41.684816+00:00) securityworker stdout | 2025-09-26 08:41:41,686 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:41:41,686 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:41:41,688 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:41:41,691 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:41:41,697 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:41:41,697 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:41:41,697 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:41:41,697 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:41:41,698 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 36]) securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:41:41,700 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:41:41,700 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:41:41,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:41:41,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:41:41,700 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:41:41,700 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:41:41,700 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:41:41,701 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:41:41,701 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:41:41,701 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:41:41,701 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:41:41,701 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 36, 41, 691111), 1, 36]) securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:41:41,702 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:41:41,702 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:41:41,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:41:41,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:41:41,702 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:41:41,702 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:41:41,702 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:41:41,702 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:41:41,702 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:41:41,702 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:41:41,702 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:41:41,703 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 36, 41, 691111), 1, 36]) securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:41:41,704 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:41:41,704 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:41:41,704 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:41:41,705 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:41:41,705 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:41:41,705 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:41:41,705 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:41:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:41:41,705 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:41:41,705 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:11 GMT)" executed successfully repositorygcworker stdout | 2025-09-26 08:41:42,176 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} proxycacheblobworker stdout | 2025-09-26 08:41:42,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:41:42,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:52.477454+00:00 (in 9.999584 seconds) proxycacheblobworker stdout | 2025-09-26 08:41:42,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:52 GMT)" (scheduled at 2025-09-26 08:41:42.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:41:42,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:41:42,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 41, 42, 478283), True, datetime.datetime(2025, 9, 26, 8, 41, 42, 478283), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:41:42,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:41:42,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:41:42,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:41:52 GMT)" executed successfully servicekey stdout | 2025-09-26 08:41:42,799 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:41:42,873 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} gunicorn-registry stdout | 2025-09-26 08:41:44,394 [253] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '253'} gunicorn-registry stdout | 2025-09-26 08:41:44,408 [59] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '59'} gunicorn-registry stdout | 2025-09-26 08:41:44,433 [257] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '257'} gunicorn-registry stdout | 2025-09-26 08:41:44,475 [255] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '255'} gunicorn-registry stdout | 2025-09-26 08:41:44,491 [252] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '252'} gunicorn-registry stdout | 2025-09-26 08:41:44,497 [258] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '258'} gunicorn-registry stdout | 2025-09-26 08:41:44,503 [251] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '251'} gunicorn-registry stdout | 2025-09-26 08:41:44,507 [256] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '256'} gunicorn-registry stdout | 2025-09-26 08:41:44,511 [254] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '254'} buildlogsarchiver stdout | 2025-09-26 08:41:45,698 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} buildlogsarchiver stdout | 2025-09-26 08:41:47,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:41:47,375 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:17.375102+00:00 (in 29.999507 seconds) buildlogsarchiver stdout | 2025-09-26 08:41:47,375 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:17 GMT)" (scheduled at 2025-09-26 08:41:47.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:41:47,376 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 41, 47, 375918), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:41:47,384 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:41:47,384 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:41:47,385 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:17 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:41:48,199 [247] [DEBUG] [app] Starting request: urn:request:4bae75e1-657a-4771-8ae2-72a2bf41e3d7 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:41:48,200 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:41:48,202 [251] [DEBUG] [app] Starting request: urn:request:0a84c6e3-9b5c-4b8d-b59f-0262d9471ce3 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:41:48,202 [251] [DEBUG] [app] Ending request: urn:request:0a84c6e3-9b5c-4b8d-b59f-0262d9471ce3 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:0a84c6e3-9b5c-4b8d-b59f-0262d9471ce3', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:41:48,203 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:41:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:41:48,203 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:41:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:41:48,204 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:41:48,205 [249] [DEBUG] [app] Starting request: urn:request:cb07a9cd-665a-466c-8b83-d49cf32fb52a (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:41:48,206 [249] [DEBUG] [app] Ending request: urn:request:cb07a9cd-665a-466c-8b83-d49cf32fb52a (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:cb07a9cd-665a-466c-8b83-d49cf32fb52a', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:41:48,206 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:41:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:41:48,206 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:41:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.002) gunicorn-web stdout | 2025-09-26 08:41:48,207 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:41:48,207 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:41:48,207 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:41:48,211 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:41:48,211 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:41:48,215 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:41:48,216 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:41:48,217 [247] [DEBUG] [app] Ending request: urn:request:4bae75e1-657a-4771-8ae2-72a2bf41e3d7 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:4bae75e1-657a-4771-8ae2-72a2bf41e3d7', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:41:48,217 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:41:48,217 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:41:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:41:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.019 118 0.019) gunicorn-web stdout | 2025-09-26 08:41:48,261 [247] [DEBUG] [app] Starting request: urn:request:d8694f58-1ac8-4733-b979-7fd0a5e880be (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:41:48,263 [251] [DEBUG] [app] Starting request: urn:request:c05a3648-c710-4ed0-8239-626af4888801 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:41:48,263 [251] [DEBUG] [app] Ending request: urn:request:c05a3648-c710-4ed0-8239-626af4888801 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:c05a3648-c710-4ed0-8239-626af4888801', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:41:48,264 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:41:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:41:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:41:48,264 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:41:48,266 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:41:48,267 [247] [DEBUG] [app] Starting request: urn:request:f8b630a3-4fa5-4436-809e-8c348a32f971 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:41:48,268 [247] [DEBUG] [app] Ending request: urn:request:f8b630a3-4fa5-4436-809e-8c348a32f971 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:f8b630a3-4fa5-4436-809e-8c348a32f971', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:41:48,268 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:41:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:41:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:41:48,268 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:41:48,269 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:41:48,269 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:41:48,269 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:41:48,272 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:41:48,272 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:41:48,277 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:41:48,278 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:41:48,279 [247] [DEBUG] [app] Ending request: urn:request:d8694f58-1ac8-4733-b979-7fd0a5e880be (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:d8694f58-1ac8-4733-b979-7fd0a5e880be', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:41:48,279 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:41:48,279 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:41:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:41:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.018 118 0.018) securityworker stdout | 2025-09-26 08:41:48,910 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} notificationworker stdout | 2025-09-26 08:41:50,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:41:50,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:00.692901+00:00 (in 9.999096 seconds) notificationworker stdout | 2025-09-26 08:41:50,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:00 GMT)" (scheduled at 2025-09-26 08:41:50.692901+00:00) notificationworker stdout | 2025-09-26 08:41:50,694 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:41:50,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 41, 50, 694154), True, datetime.datetime(2025, 9, 26, 8, 41, 50, 694154), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:41:50,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:41:50,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:41:50,702 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:00 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:41:50,885 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:41:50,886 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:41:52.886914+00:00 (in 2.000826 seconds) exportactionlogsworker stdout | 2025-09-26 08:41:50,886 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:50 GMT)" (scheduled at 2025-09-26 08:41:50.885619+00:00) exportactionlogsworker stdout | 2025-09-26 08:41:50,886 [56] [DEBUG] [workers.queueworker] Getting work item from queue. exportactionlogsworker stdout | 2025-09-26 08:41:50,887 [56] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 41, 50, 886405), True, datetime.datetime(2025, 9, 26, 8, 41, 50, 886405), 0, 'exportactionlogs/%', 50, 1, 0]) exportactionlogsworker stdout | 2025-09-26 08:41:50,893 [56] [DEBUG] [workers.queueworker] No more work. exportactionlogsworker stdout | 2025-09-26 08:41:50,893 [56] [DEBUG] [data.database] Disconnecting from database. exportactionlogsworker stdout | 2025-09-26 08:41:50,893 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:50 GMT)" executed successfully blobuploadcleanupworker stdout | 2025-09-26 08:41:52,236 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} proxycacheblobworker stdout | 2025-09-26 08:41:52,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:41:52,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:02.477454+00:00 (in 9.999560 seconds) proxycacheblobworker stdout | 2025-09-26 08:41:52,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:02 GMT)" (scheduled at 2025-09-26 08:41:52.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:41:52,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:41:52,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 41, 52, 478287), True, datetime.datetime(2025, 9, 26, 8, 41, 52, 478287), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:41:52,485 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:41:52,485 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:41:52,485 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:02 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:41:52,887 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:41:52,887 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:50.885619+00:00 (in 57.997672 seconds) exportactionlogsworker stdout | 2025-09-26 08:41:52,888 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:52 GMT)" (scheduled at 2025-09-26 08:41:52.886914+00:00) exportactionlogsworker stdout | 2025-09-26 08:41:52,888 [56] [DEBUG] [workers.queueworker] Running watchdog. exportactionlogsworker stdout | 2025-09-26 08:41:52,888 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:52 GMT)" executed successfully globalpromstats stdout | 2025-09-26 08:41:55,286 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} proxycacheblobworker stdout | 2025-09-26 08:41:56,000 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} gcworker stdout | 2025-09-26 08:41:57,083 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:41:57,083 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:07.085344+00:00 (in 10.001508 seconds) gcworker stdout | 2025-09-26 08:41:57,084 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:27 GMT)" (scheduled at 2025-09-26 08:41:57.083344+00:00) gcworker stdout | 2025-09-26 08:41:57,084 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:41:57,084 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:27 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:41:57,095 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} repositoryactioncounter stdout | 2025-09-26 08:41:57,185 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} exportactionlogsworker stdout | 2025-09-26 08:41:57,367 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} manifestsubjectbackfillworker stdout | 2025-09-26 08:41:57,902 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} namespacegcworker stdout | 2025-09-26 08:41:59,791 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:41:59,791 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:08.793810+00:00 (in 9.002249 seconds) namespacegcworker stdout | 2025-09-26 08:41:59,791 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:59 GMT)" (scheduled at 2025-09-26 08:41:59.791127+00:00) namespacegcworker stdout | 2025-09-26 08:41:59,791 [66] [DEBUG] [workers.queueworker] Getting work item from queue. namespacegcworker stdout | 2025-09-26 08:41:59,792 [66] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 41, 59, 791876), True, datetime.datetime(2025, 9, 26, 8, 41, 59, 791876), 0, 'namespacegc/%', 50, 1, 0]) namespacegcworker stdout | 2025-09-26 08:41:59,799 [66] [DEBUG] [workers.queueworker] No more work. namespacegcworker stdout | 2025-09-26 08:41:59,799 [66] [DEBUG] [data.database] Disconnecting from database. namespacegcworker stdout | 2025-09-26 08:41:59,799 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:42:59 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:42:00,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:42:00,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:10.692901+00:00 (in 9.999177 seconds) notificationworker stdout | 2025-09-26 08:42:00,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:10 GMT)" (scheduled at 2025-09-26 08:42:00.692901+00:00) notificationworker stdout | 2025-09-26 08:42:00,694 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:42:00,695 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 42, 0, 694047), True, datetime.datetime(2025, 9, 26, 8, 42, 0, 694047), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:42:00,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:42:00,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:42:00,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:10 GMT)" executed successfully proxycacheblobworker stdout | 2025-09-26 08:42:02,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:42:02,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:12.477454+00:00 (in 9.999584 seconds) proxycacheblobworker stdout | 2025-09-26 08:42:02,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:12 GMT)" (scheduled at 2025-09-26 08:42:02.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:42:02,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:42:02,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 42, 2, 478162), True, datetime.datetime(2025, 9, 26, 8, 42, 2, 478162), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:42:02,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:42:02,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:42:02,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:12 GMT)" executed successfully storagereplication stdout | 2025-09-26 08:42:02,723 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} namespacegcworker stdout | 2025-09-26 08:42:03,101 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-web stdout | 2025-09-26 08:42:03,199 [247] [DEBUG] [app] Starting request: urn:request:2b5b7ab5-a4e9-4c13-9815-985cce440409 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:42:03,203 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:42:03,205 [251] [DEBUG] [app] Starting request: urn:request:f92d3049-a06b-40bf-afcb-c934d85c6da1 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:42:03,205 [251] [DEBUG] [app] Ending request: urn:request:f92d3049-a06b-40bf-afcb-c934d85c6da1 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:f92d3049-a06b-40bf-afcb-c934d85c6da1', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:42:03,206 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:42:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:42:03,206 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:42:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:42:03,206 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:42:03,209 [247] [DEBUG] [app] Starting request: urn:request:ce617211-ab09-44aa-bf17-f2945c790157 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:42:03,209 [247] [DEBUG] [app] Ending request: urn:request:ce617211-ab09-44aa-bf17-f2945c790157 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:ce617211-ab09-44aa-bf17-f2945c790157', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:42:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:42:03,209 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:42:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:42:03,210 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:42:03,210 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:42:03,210 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:42:03,210 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:42:03,215 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:42:03,215 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:42:03,219 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:42:03,220 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:42:03,221 [247] [DEBUG] [app] Ending request: urn:request:2b5b7ab5-a4e9-4c13-9815-985cce440409 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:2b5b7ab5-a4e9-4c13-9815-985cce440409', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:42:03,221 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:42:03,221 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:42:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:42:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.023 118 0.023) gunicorn-web stdout | 2025-09-26 08:42:03,261 [247] [DEBUG] [app] Starting request: urn:request:84d380e3-f527-45a4-8bdf-c5db9235035a (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:42:03,263 [251] [DEBUG] [app] Starting request: urn:request:1769b5e8-29e4-4aa4-96a7-17600eadf6ec (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:42:03,263 [251] [DEBUG] [app] Ending request: urn:request:1769b5e8-29e4-4aa4-96a7-17600eadf6ec (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:1769b5e8-29e4-4aa4-96a7-17600eadf6ec', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:42:03,264 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:42:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:42:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.002) gunicorn-web stdout | 2025-09-26 08:42:03,264 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:42:03,265 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:42:03,267 [250] [DEBUG] [app] Starting request: urn:request:1c40f1c1-74c8-4323-8e52-8930e700d895 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:42:03,267 [250] [DEBUG] [app] Ending request: urn:request:1c40f1c1-74c8-4323-8e52-8930e700d895 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:1c40f1c1-74c8-4323-8e52-8930e700d895', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:42:03,267 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:42:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:42:03,268 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:42:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:42:03,268 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:42:03,268 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:42:03,268 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:42:03,272 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:42:03,272 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:42:03,276 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:42:03,277 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:42:03,278 [247] [DEBUG] [app] Ending request: urn:request:84d380e3-f527-45a4-8bdf-c5db9235035a (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:84d380e3-f527-45a4-8bdf-c5db9235035a', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:42:03,278 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:42:03,278 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:42:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:42:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.017 118 0.018) autopruneworker stdout | 2025-09-26 08:42:04,492 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} expiredappspecifictokenworker stdout | 2025-09-26 08:42:04,566 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} manifestbackfillworker stdout | 2025-09-26 08:42:04,796 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} builder stdout | 2025-09-26 08:42:05,183 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} logrotateworker stdout | 2025-09-26 08:42:06,514 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gcworker stdout | 2025-09-26 08:42:07,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:42:07,085 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:27.083344+00:00 (in 19.997565 seconds) gcworker stdout | 2025-09-26 08:42:07,085 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:37 GMT)" (scheduled at 2025-09-26 08:42:07.085344+00:00) gcworker stdout | 2025-09-26 08:42:07,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gcworker stdout | 2025-09-26 08:42:07,092 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875827091, None, 1, 0]) gcworker stdout | 2025-09-26 08:42:07,094 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:42:07,094 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:37 GMT)" executed successfully securityworker stdout | 2025-09-26 08:42:07,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:42:07,684 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:11.684816+00:00 (in 4.000790 seconds) securityworker stdout | 2025-09-26 08:42:07,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:37 GMT)" (scheduled at 2025-09-26 08:42:07.683505+00:00) securityworker stdout | 2025-09-26 08:42:07,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:42:07,684 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:42:07,686 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:42:07,688 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:42:07,694 [86] [DEBUG] [peewee] ('SELECT Min("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:42:07,695 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:42:07,695 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:42:07,695 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:42:07,695 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:42:07,696 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 22, 30]) securityworker stdout | 2025-09-26 08:42:07,698 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 22-30 by worker securityworker stdout | 2025-09-26 08:42:07,698 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 22-30 securityworker stdout | 2025-09-26 08:42:07,698 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 22-30 securityworker stdout | 2025-09-26 08:42:07,698 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 22-30 by worker securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 22-30 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 22-30 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:42:07,698 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:42:07,698 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stdout | 2025-09-26 08:42:07,698 [86] [DEBUG] [util.migrate.allocator] Left range 22-30 securityworker stdout | 2025-09-26 08:42:07,698 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 30-36 securityworker stdout | 2025-09-26 08:42:07,698 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 30 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Left range 22-30 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 30-36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 30 securityworker stdout | 2025-09-26 08:42:07,699 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 30, 36]) securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 30-36 by worker securityworker stdout | 2025-09-26 08:42:07,700 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 30-36 by worker securityworker stdout | 2025-09-26 08:42:07,700 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 30-36 securityworker stdout | 2025-09-26 08:42:07,700 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 22-30 securityworker stdout | 2025-09-26 08:42:07,700 [86] [DEBUG] [util.migrate.allocator] Already merged with block 22-30 securityworker stdout | 2025-09-26 08:42:07,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 22 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 30-36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 22-30 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Already merged with block 22-30 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 22 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:42:07,700 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:42:07,700 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:42:07,700 [86] [DEBUG] [util.migrate.allocator] Total range: 1-22 securityworker stdout | 2025-09-26 08:42:07,700 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:42:07,700 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-22 securityworker stdout | 2025-09-26 08:42:07,700 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 14 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-22 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-22 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 14 securityworker stdout | 2025-09-26 08:42:07,701 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 14, 22]) securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 14-22 by worker securityworker stdout | 2025-09-26 08:42:07,702 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 14-22 by worker securityworker stdout | 2025-09-26 08:42:07,702 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 14-22 securityworker stdout | 2025-09-26 08:42:07,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 14 securityworker stdout | 2025-09-26 08:42:07,702 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:42:07,702 [86] [DEBUG] [util.migrate.allocator] Total range: 1-14 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 14-22 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 14 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-14 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:42:07,702 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:42:07,702 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-14 securityworker stdout | 2025-09-26 08:42:07,702 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 6 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-14 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 6 securityworker stdout | 2025-09-26 08:42:07,703 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 3, 11]) securityworker stdout | 2025-09-26 08:42:07,703 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 3-11 by worker securityworker stdout | 2025-09-26 08:42:07,703 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 3-11 securityworker stdout | 2025-09-26 08:42:07,703 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 3-11 securityworker stdout | 2025-09-26 08:42:07,703 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 3-11 by worker securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 3-11 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 3-11 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:42:07,703 [86] [DEBUG] [util.migrate.allocator] Total range: 1-14 securityworker stdout | 2025-09-26 08:42:07,703 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stdout | 2025-09-26 08:42:07,703 [86] [DEBUG] [util.migrate.allocator] Left range 3-11 securityworker stdout | 2025-09-26 08:42:07,704 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 11-14 securityworker stdout | 2025-09-26 08:42:07,704 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 11 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-14 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Left range 3-11 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 11-14 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 11 securityworker stdout | 2025-09-26 08:42:07,704 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 11, 19]) securityworker stdout | 2025-09-26 08:42:07,705 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 11-19 by worker securityworker stdout | 2025-09-26 08:42:07,705 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 11-19 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 11-19 by worker securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 11-19 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 3-11 securityworker stdout | 2025-09-26 08:42:07,705 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 3-11 securityworker stdout | 2025-09-26 08:42:07,705 [86] [DEBUG] [util.migrate.allocator] Already merged with block 3-11 securityworker stdout | 2025-09-26 08:42:07,706 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 3 securityworker stdout | 2025-09-26 08:42:07,706 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:42:07,706 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:42:07,706 [86] [DEBUG] [util.migrate.allocator] Total range: 1-3 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Already merged with block 3-11 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 3 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-3 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:42:07,706 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:42:07,706 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-3 securityworker stdout | 2025-09-26 08:42:07,706 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-3 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:42:07,706 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 9]) securityworker stdout | 2025-09-26 08:42:07,707 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stdout | 2025-09-26 08:42:07,707 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stdout | 2025-09-26 08:42:07,707 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:42:07,707 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 9 securityworker stdout | 2025-09-26 08:42:07,707 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:42:07,707 [86] [DEBUG] [util.migrate.allocator] Total range: 9-1 securityworker stdout | 2025-09-26 08:42:07,707 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 9 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 9-1 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:42:07,707 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:42:07,707 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:42:07,707 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:42:07,707 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:42:07,708 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 37, 7, 688002), 15, 23]) securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 15-23 by worker securityworker stdout | 2025-09-26 08:42:07,709 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 15-23 by worker securityworker stdout | 2025-09-26 08:42:07,709 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 15-23 securityworker stdout | 2025-09-26 08:42:07,709 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 15-23 securityworker stdout | 2025-09-26 08:42:07,709 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:42:07,709 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:42:07,709 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stdout | 2025-09-26 08:42:07,709 [86] [DEBUG] [util.migrate.allocator] Left range 15-23 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 15-23 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 15-23 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Left range 15-23 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 23-36 securityworker stdout | 2025-09-26 08:42:07,709 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 23-36 securityworker stdout | 2025-09-26 08:42:07,709 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:42:07,710 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 37, 7, 688002), 27, 35]) securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 27-35 by worker securityworker stdout | 2025-09-26 08:42:07,711 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 27-35 by worker securityworker stdout | 2025-09-26 08:42:07,711 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 27-35 securityworker stdout | 2025-09-26 08:42:07,711 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 27-35 securityworker stdout | 2025-09-26 08:42:07,711 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stdout | 2025-09-26 08:42:07,711 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:42:07,711 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 3 total holes securityworker stdout | 2025-09-26 08:42:07,711 [86] [DEBUG] [util.migrate.allocator] Right range 15-23 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 27-35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 27-35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 3 total holes securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Right range 15-23 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-15 securityworker stdout | 2025-09-26 08:42:07,711 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-15 securityworker stdout | 2025-09-26 08:42:07,711 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 7 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 7 securityworker stdout | 2025-09-26 08:42:07,712 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 37, 7, 688002), 2, 10]) securityworker stdout | 2025-09-26 08:42:07,713 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 2-10 by worker securityworker stdout | 2025-09-26 08:42:07,713 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 2-10 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 2-10 by worker securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 2-10 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 2-10 securityworker stdout | 2025-09-26 08:42:07,713 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 2-10 securityworker stdout | 2025-09-26 08:42:07,713 [86] [DEBUG] [util.migrate.allocator] Total blocks: 3 securityworker stdout | 2025-09-26 08:42:07,713 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:42:07,713 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 4 total holes securityworker stdout | 2025-09-26 08:42:07,713 [86] [DEBUG] [util.migrate.allocator] Right range 2-10 securityworker stdout | 2025-09-26 08:42:07,713 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stdout | 2025-09-26 08:42:07,713 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 3 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 4 total holes securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Right range 2-10 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-2 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:42:07,713 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 37, 7, 688002), 1, 9]) securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stdout | 2025-09-26 08:42:07,714 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stdout | 2025-09-26 08:42:07,714 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stdout | 2025-09-26 08:42:07,714 [86] [DEBUG] [util.migrate.allocator] Merging with block 2-10 securityworker stdout | 2025-09-26 08:42:07,714 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 10 securityworker stdout | 2025-09-26 08:42:07,714 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:42:07,714 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 2-10 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 10 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 10-36 securityworker stdout | 2025-09-26 08:42:07,714 [86] [DEBUG] [util.migrate.allocator] Total range: 10-36 securityworker stdout | 2025-09-26 08:42:07,714 [86] [DEBUG] [util.migrate.allocator] Selected random hole 2 with 3 total holes securityworker stdout | 2025-09-26 08:42:07,715 [86] [DEBUG] [util.migrate.allocator] Left range 15-23 securityworker stdout | 2025-09-26 08:42:07,715 [86] [DEBUG] [util.migrate.allocator] Right range 27-35 securityworker stdout | 2025-09-26 08:42:07,715 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 23-27 securityworker stdout | 2025-09-26 08:42:07,715 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 23 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 2 with 3 total holes securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Left range 15-23 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Right range 27-35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 23-27 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 23 securityworker stdout | 2025-09-26 08:42:07,716 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 37, 7, 688002), 23, 31]) securityworker stdout | 2025-09-26 08:42:07,716 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 23-31 by worker securityworker stdout | 2025-09-26 08:42:07,716 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 23-31 securityworker stdout | 2025-09-26 08:42:07,716 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 15-23 securityworker stdout | 2025-09-26 08:42:07,716 [86] [DEBUG] [util.migrate.allocator] Already merged with block 15-23 securityworker stdout | 2025-09-26 08:42:07,716 [86] [DEBUG] [util.migrate.allocator] Merging with block 27-35 securityworker stdout | 2025-09-26 08:42:07,716 [86] [DEBUG] [util.migrate.allocator] Discarding 2 obsolete blocks securityworker stdout | 2025-09-26 08:42:07,716 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 15-35 securityworker stdout | 2025-09-26 08:42:07,716 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:42:07,716 [86] [DEBUG] [util.migrate.allocator] Total range: 10-36 securityworker stdout | 2025-09-26 08:42:07,716 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:42:07,716 [86] [DEBUG] [util.migrate.allocator] Right range 15-35 securityworker stdout | 2025-09-26 08:42:07,716 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 10-15 securityworker stdout | 2025-09-26 08:42:07,717 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 10 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 23-31 by worker securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 23-31 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 15-23 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Already merged with block 15-23 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 27-35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding 2 obsolete blocks securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 15-35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 10-36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Right range 15-35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 10-15 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 10 securityworker stdout | 2025-09-26 08:42:07,717 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 37, 7, 688002), 10, 18]) securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 10-18 by worker securityworker stdout | 2025-09-26 08:42:07,718 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 10-18 by worker securityworker stdout | 2025-09-26 08:42:07,718 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 10-18 securityworker stdout | 2025-09-26 08:42:07,718 [86] [DEBUG] [util.migrate.allocator] Merging with block 15-35 securityworker stdout | 2025-09-26 08:42:07,718 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 35 securityworker stdout | 2025-09-26 08:42:07,718 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 10-18 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 15-35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:42:07,718 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:42:07,718 [86] [DEBUG] [util.migrate.allocator] Total range: 35-36 securityworker stdout | 2025-09-26 08:42:07,718 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:42:07,718 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 35-36 securityworker stdout | 2025-09-26 08:42:07,718 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 35-36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 35-36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 35 securityworker stdout | 2025-09-26 08:42:07,718 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 37, 7, 688002), 35, 36]) securityworker stdout | 2025-09-26 08:42:07,719 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 35-36 by worker securityworker stdout | 2025-09-26 08:42:07,719 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 35-36 securityworker stdout | 2025-09-26 08:42:07,719 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 35 securityworker stdout | 2025-09-26 08:42:07,719 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:42:07,719 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:42:07,719 [86] [DEBUG] [util.migrate.allocator] Total range: 36-35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 35-36 by worker securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 35-36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 36-35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:42:07,719 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:42:07,719 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:42:07,719 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:42:07,719 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:42:07,719 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:42:07,720 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 37, 7, 688002), 27, 35]) securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 27-35 by worker securityworker stdout | 2025-09-26 08:42:07,721 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 27-35 by worker securityworker stdout | 2025-09-26 08:42:07,721 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 27-35 securityworker stdout | 2025-09-26 08:42:07,721 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 27-35 securityworker stdout | 2025-09-26 08:42:07,721 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:42:07,721 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:42:07,721 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:42:07,721 [86] [DEBUG] [util.migrate.allocator] Right range 27-35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 27-35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 27-35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Right range 27-35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-27 securityworker stdout | 2025-09-26 08:42:07,721 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-27 securityworker stdout | 2025-09-26 08:42:07,721 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 19 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 19 securityworker stdout | 2025-09-26 08:42:07,722 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 37, 7, 688002), 9, 17]) securityworker stdout | 2025-09-26 08:42:07,722 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 9-17 by worker securityworker stdout | 2025-09-26 08:42:07,722 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 9-17 securityworker stdout | 2025-09-26 08:42:07,723 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 9-17 securityworker stdout | 2025-09-26 08:42:07,723 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stdout | 2025-09-26 08:42:07,723 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:42:07,723 [86] [DEBUG] [util.migrate.allocator] Selected random hole 2 with 3 total holes securityworker stdout | 2025-09-26 08:42:07,723 [86] [DEBUG] [util.migrate.allocator] Left range 9-17 securityworker stdout | 2025-09-26 08:42:07,723 [86] [DEBUG] [util.migrate.allocator] Right range 27-35 securityworker stdout | 2025-09-26 08:42:07,723 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 17-27 securityworker stdout | 2025-09-26 08:42:07,723 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 19 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 9-17 by worker securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 9-17 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 9-17 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 2 with 3 total holes securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Left range 9-17 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Right range 27-35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 17-27 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 19 securityworker stdout | 2025-09-26 08:42:07,723 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 37, 7, 688002), 17, 25]) securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 17-25 by worker securityworker stdout | 2025-09-26 08:42:07,725 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 17-25 by worker securityworker stdout | 2025-09-26 08:42:07,725 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 17-25 securityworker stdout | 2025-09-26 08:42:07,725 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 9-17 securityworker stdout | 2025-09-26 08:42:07,725 [86] [DEBUG] [util.migrate.allocator] Already merged with block 9-17 securityworker stdout | 2025-09-26 08:42:07,725 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:42:07,725 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 9-25 securityworker stdout | 2025-09-26 08:42:07,725 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 17-25 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 9-17 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Already merged with block 9-17 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 9-25 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:42:07,725 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:42:07,725 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 3 total holes securityworker stdout | 2025-09-26 08:42:07,725 [86] [DEBUG] [util.migrate.allocator] Right range 9-25 securityworker stdout | 2025-09-26 08:42:07,725 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-9 securityworker stdout | 2025-09-26 08:42:07,725 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 3 total holes securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Right range 9-25 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-9 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:42:07,726 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 37, 7, 688002), 1, 9]) securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stdout | 2025-09-26 08:42:07,726 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stdout | 2025-09-26 08:42:07,726 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stdout | 2025-09-26 08:42:07,726 [86] [DEBUG] [util.migrate.allocator] Merging with block 9-25 securityworker stdout | 2025-09-26 08:42:07,726 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 25 securityworker stdout | 2025-09-26 08:42:07,726 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:42:07,727 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:42:07,727 [86] [DEBUG] [util.migrate.allocator] Total range: 25-36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 9-25 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 25 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 25-36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stdout | 2025-09-26 08:42:07,727 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stdout | 2025-09-26 08:42:07,727 [86] [DEBUG] [util.migrate.allocator] Left range 27-35 securityworker stdout | 2025-09-26 08:42:07,727 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 35-36 securityworker stdout | 2025-09-26 08:42:07,727 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Left range 27-35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 35-36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 35 securityworker stdout | 2025-09-26 08:42:07,727 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 37, 7, 688002), 35, 36]) securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 35-36 by worker securityworker stdout | 2025-09-26 08:42:07,728 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 35-36 by worker securityworker stdout | 2025-09-26 08:42:07,728 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 35-36 securityworker stdout | 2025-09-26 08:42:07,728 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 27-35 securityworker stdout | 2025-09-26 08:42:07,728 [86] [DEBUG] [util.migrate.allocator] Already merged with block 27-35 securityworker stdout | 2025-09-26 08:42:07,728 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 27 securityworker stdout | 2025-09-26 08:42:07,728 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:42:07,728 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 35-36 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 27-35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Already merged with block 27-35 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 27 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 25-27 securityworker stdout | 2025-09-26 08:42:07,728 [86] [DEBUG] [util.migrate.allocator] Total range: 25-27 securityworker stdout | 2025-09-26 08:42:07,728 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:42:07,728 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 25-27 securityworker stdout | 2025-09-26 08:42:07,728 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 25 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 25-27 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 25 securityworker stdout | 2025-09-26 08:42:07,729 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 37, 7, 688002), 25, 33]) securityworker stdout | 2025-09-26 08:42:07,729 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 25-33 by worker securityworker stdout | 2025-09-26 08:42:07,729 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 25-33 securityworker stdout | 2025-09-26 08:42:07,730 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 25 securityworker stdout | 2025-09-26 08:42:07,730 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 33 securityworker stdout | 2025-09-26 08:42:07,730 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:42:07,730 [86] [DEBUG] [util.migrate.allocator] Total range: 33-25 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 25-33 by worker securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 25-33 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 25 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 33 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] Total range: 33-25 securityworker stderr | 2025-09-26 08:42:07 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:42:07,730 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:42:07,730 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:42:07,730 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:37 GMT)" executed successfully namespacegcworker stdout | 2025-09-26 08:42:08,794 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:42:08,794 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:59.791127+00:00 (in 50.996886 seconds) namespacegcworker stdout | 2025-09-26 08:42:08,794 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:08 GMT)" (scheduled at 2025-09-26 08:42:08.793810+00:00) namespacegcworker stdout | 2025-09-26 08:42:08,794 [66] [DEBUG] [workers.queueworker] Running watchdog. namespacegcworker stdout | 2025-09-26 08:42:08,794 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:08 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:42:09,856 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:42:09,861 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:42:09,876 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:42:09,888 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:42:09,900 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gcworker stdout | 2025-09-26 08:42:09,972 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} securityscanningnotificationworker stdout | 2025-09-26 08:42:10,163 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} queuecleanupworker stdout | 2025-09-26 08:42:10,391 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} gunicorn-secscan stdout | 2025-09-26 08:42:10,582 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} securityscanningnotificationworker stdout | 2025-09-26 08:42:10,584 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:42:10,584 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:28.587130+00:00 (in 18.002246 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:42:10,585 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:10 GMT)" (scheduled at 2025-09-26 08:42:10.584403+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:42:10,585 [82] [DEBUG] [workers.queueworker] Getting work item from queue. securityscanningnotificationworker stdout | 2025-09-26 08:42:10,586 [82] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 42, 10, 585244), True, datetime.datetime(2025, 9, 26, 8, 42, 10, 585244), 0, 'secscanv4/%', 50, 1, 0]) gunicorn-secscan stdout | 2025-09-26 08:42:10,589 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:42:10,592 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} securityscanningnotificationworker stdout | 2025-09-26 08:42:10,593 [82] [DEBUG] [workers.queueworker] No more work. securityscanningnotificationworker stdout | 2025-09-26 08:42:10,593 [82] [DEBUG] [data.database] Disconnecting from database. securityscanningnotificationworker stdout | 2025-09-26 08:42:10,593 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:10 GMT)" executed successfully autopruneworker stdout | 2025-09-26 08:42:10,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:42:10,598 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:40.598100+00:00 (in 29.999603 seconds) autopruneworker stdout | 2025-09-26 08:42:10,598 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:40 GMT)" (scheduled at 2025-09-26 08:42:10.598100+00:00) autopruneworker stdout | 2025-09-26 08:42:10,603 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758872530602, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:42:10,606 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:42:10,607 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:42:10,607 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:40 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:42:10,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:42:10,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:20.692901+00:00 (in 9.999563 seconds) notificationworker stdout | 2025-09-26 08:42:10,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:20 GMT)" (scheduled at 2025-09-26 08:42:10.692901+00:00) notificationworker stdout | 2025-09-26 08:42:10,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:42:10,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 42, 10, 693661), True, datetime.datetime(2025, 9, 26, 8, 42, 10, 693661), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:42:10,700 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:42:10,700 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:42:10,700 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:20 GMT)" executed successfully chunkcleanupworker stdout | 2025-09-26 08:42:11,219 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} securityworker stdout | 2025-09-26 08:42:11,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:42:11,685 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:37.683505+00:00 (in 25.997820 seconds) securityworker stdout | 2025-09-26 08:42:11,685 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:41 GMT)" (scheduled at 2025-09-26 08:42:11.684816+00:00) securityworker stdout | 2025-09-26 08:42:11,686 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:42:11,686 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:42:11,688 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:42:11,690 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:42:11,696 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:42:11,696 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:42:11,696 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:42:11,696 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:42:11,697 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 36]) securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:42:11,699 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:42:11,699 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:42:11,699 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:42:11,699 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:42:11,699 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:42:11,699 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:42:11,699 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:42:11,699 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:42:11,699 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:42:11,699 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:42:11,699 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:42:11,700 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 37, 11, 690655), 1, 36]) securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:42:11,701 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:42:11,701 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:42:11,701 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:42:11,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:42:11,702 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:42:11,702 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:42:11,702 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:42:11,702 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:42:11,702 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:42:11,702 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:42:11,702 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:42:11,703 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 37, 11, 690655), 1, 36]) securityworker stdout | 2025-09-26 08:42:11,704 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:42:11,704 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:42:11,704 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:42:11,704 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:42:11,704 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:42:11,704 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:42:11,704 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:42:11,704 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:42:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:42:11,704 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:41 GMT)" executed successfully repositorygcworker stdout | 2025-09-26 08:42:12,192 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} proxycacheblobworker stdout | 2025-09-26 08:42:12,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:42:12,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:22.477454+00:00 (in 9.999551 seconds) proxycacheblobworker stdout | 2025-09-26 08:42:12,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:22 GMT)" (scheduled at 2025-09-26 08:42:12.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:42:12,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:42:12,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 42, 12, 478278), True, datetime.datetime(2025, 9, 26, 8, 42, 12, 478278), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:42:12,485 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:42:12,485 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:42:12,485 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:22 GMT)" executed successfully servicekey stdout | 2025-09-26 08:42:12,813 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:42:12,890 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} gunicorn-registry stdout | 2025-09-26 08:42:14,416 [253] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '253'} gunicorn-registry stdout | 2025-09-26 08:42:14,427 [59] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '59'} gunicorn-registry stdout | 2025-09-26 08:42:14,450 [257] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '257'} gunicorn-registry stdout | 2025-09-26 08:42:14,494 [255] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '255'} gunicorn-registry stdout | 2025-09-26 08:42:14,521 [258] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '258'} gunicorn-registry stdout | 2025-09-26 08:42:14,528 [251] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '251'} gunicorn-registry stdout | 2025-09-26 08:42:14,533 [254] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '254'} gunicorn-registry stdout | 2025-09-26 08:42:14,539 [256] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '256'} gunicorn-registry stdout | 2025-09-26 08:42:14,543 [252] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '252'} buildlogsarchiver stdout | 2025-09-26 08:42:15,714 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} buildlogsarchiver stdout | 2025-09-26 08:42:17,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:42:17,375 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:47.375102+00:00 (in 29.999560 seconds) buildlogsarchiver stdout | 2025-09-26 08:42:17,375 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:47 GMT)" (scheduled at 2025-09-26 08:42:17.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:42:17,376 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 42, 17, 375823), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:42:17,383 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:42:17,384 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:42:17,384 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:47 GMT)" executed successfully manifestsubjectbackfillworker stdout | 2025-09-26 08:42:17,985 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:42:17,986 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:33.984400+00:00 (in 15.998218 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:42:17,986 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:17 GMT)" (scheduled at 2025-09-26 08:42:17.985743+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:42:17,986 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."artifact_type_backfilled" = %s) OR ("t1"."artifact_type_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:42:17,992 [64] [DEBUG] [__main__] Manifest artifact_type backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:42:17,992 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:42:17,992 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_artifact_type (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:17 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:42:18,199 [249] [DEBUG] [app] Starting request: urn:request:960100b3-63c9-4d35-8612-24f98e92a4be (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:42:18,207 [249] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:42:18,209 [256] [DEBUG] [app] Starting request: urn:request:ff1d4ab3-299e-428f-aa99-4f3bbe886a40 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:42:18,209 [256] [DEBUG] [app] Ending request: urn:request:ff1d4ab3-299e-428f-aa99-4f3bbe886a40 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:ff1d4ab3-299e-428f-aa99-4f3bbe886a40', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:42:18,209 [256] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:42:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:42:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:42:18,210 [249] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:42:18,210 [249] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:42:18,212 [249] [DEBUG] [app] Starting request: urn:request:1071f573-406a-456b-8ead-3af0fa02b32c (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:42:18,212 [249] [DEBUG] [app] Ending request: urn:request:1071f573-406a-456b-8ead-3af0fa02b32c (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:1071f573-406a-456b-8ead-3af0fa02b32c', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:42:18,212 [249] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:42:18 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:42:18 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:42:18,212 [249] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:42:18,213 [249] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:42:18,213 [249] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:42:18,213 [249] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:42:18,217 [249] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:42:18,217 [249] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:42:18,222 [249] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:42:18,223 [249] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:42:18,224 [249] [DEBUG] [app] Ending request: urn:request:960100b3-63c9-4d35-8612-24f98e92a4be (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:960100b3-63c9-4d35-8612-24f98e92a4be', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:42:18,224 [249] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:42:18,224 [249] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:42:18 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:42:18 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.026 118 0.026) gunicorn-web stdout | 2025-09-26 08:42:18,261 [247] [DEBUG] [app] Starting request: urn:request:906e63e0-2be7-409d-a42c-178488142fa2 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:42:18,262 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:42:18,264 [251] [DEBUG] [app] Starting request: urn:request:7e7b1f86-28e3-4ce5-a73f-4f46b4a21cb1 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:42:18,264 [251] [DEBUG] [app] Ending request: urn:request:7e7b1f86-28e3-4ce5-a73f-4f46b4a21cb1 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:7e7b1f86-28e3-4ce5-a73f-4f46b4a21cb1', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:42:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-registry stdout | 2025-09-26 08:42:18,264 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:42:18 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:42:18,264 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:42:18,265 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:42:18,267 [250] [DEBUG] [app] Starting request: urn:request:c1692229-7240-4850-b425-4762157ea840 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:42:18,267 [250] [DEBUG] [app] Ending request: urn:request:c1692229-7240-4850-b425-4762157ea840 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:c1692229-7240-4850-b425-4762157ea840', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:42:18,267 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:42:18 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:42:18 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:42:18,267 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:42:18,268 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:42:18,268 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:42:18,268 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:42:18,272 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:42:18,272 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:42:18,276 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:42:18,277 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:42:18,278 [247] [DEBUG] [app] Ending request: urn:request:906e63e0-2be7-409d-a42c-178488142fa2 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:906e63e0-2be7-409d-a42c-178488142fa2', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:42:18,278 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:42:18,279 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:42:18 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:42:18 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.019 118 0.019) securityworker stdout | 2025-09-26 08:42:18,926 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} repositorygcworker stdout | 2025-09-26 08:42:19,075 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:42:19,076 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:28.077240+00:00 (in 9.001146 seconds) repositorygcworker stdout | 2025-09-26 08:42:19,076 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:19 GMT)" (scheduled at 2025-09-26 08:42:19.075668+00:00) repositorygcworker stdout | 2025-09-26 08:42:19,076 [81] [DEBUG] [workers.queueworker] Getting work item from queue. repositorygcworker stdout | 2025-09-26 08:42:19,077 [81] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 42, 19, 76780), True, datetime.datetime(2025, 9, 26, 8, 42, 19, 76780), 0, 'repositorygc/%', 50, 1, 0]) repositorygcworker stdout | 2025-09-26 08:42:19,083 [81] [DEBUG] [workers.queueworker] No more work. repositorygcworker stdout | 2025-09-26 08:42:19,083 [81] [DEBUG] [data.database] Disconnecting from database. repositorygcworker stdout | 2025-09-26 08:42:19,083 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:19 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:42:20,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:42:20,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:30.692901+00:00 (in 9.999558 seconds) notificationworker stdout | 2025-09-26 08:42:20,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:30 GMT)" (scheduled at 2025-09-26 08:42:20.692901+00:00) notificationworker stdout | 2025-09-26 08:42:20,694 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:42:20,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 42, 20, 694138), True, datetime.datetime(2025, 9, 26, 8, 42, 20, 694138), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:42:20,702 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:42:20,702 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:42:20,702 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:30 GMT)" executed successfully blobuploadcleanupworker stdout | 2025-09-26 08:42:22,251 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} proxycacheblobworker stdout | 2025-09-26 08:42:22,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:42:22,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:26.483749+00:00 (in 4.005840 seconds) proxycacheblobworker stdout | 2025-09-26 08:42:22,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:32 GMT)" (scheduled at 2025-09-26 08:42:22.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:42:22,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:42:22,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 42, 22, 478327), True, datetime.datetime(2025, 9, 26, 8, 42, 22, 478327), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:42:22,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:42:22,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:42:22,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:32 GMT)" executed successfully globalpromstats stdout | 2025-09-26 08:42:25,303 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} proxycacheblobworker stdout | 2025-09-26 08:42:26,016 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} proxycacheblobworker stdout | 2025-09-26 08:42:26,484 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:42:26,484 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:32.477454+00:00 (in 5.993188 seconds) proxycacheblobworker stdout | 2025-09-26 08:42:26,484 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:26 GMT)" (scheduled at 2025-09-26 08:42:26.483749+00:00) proxycacheblobworker stdout | 2025-09-26 08:42:26,484 [69] [DEBUG] [workers.queueworker] Running watchdog. proxycacheblobworker stdout | 2025-09-26 08:42:26,484 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:26 GMT)" executed successfully gcworker stdout | 2025-09-26 08:42:27,083 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:42:27,083 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:37.085344+00:00 (in 10.001381 seconds) gcworker stdout | 2025-09-26 08:42:27,084 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:57 GMT)" (scheduled at 2025-09-26 08:42:27.083344+00:00) gcworker stdout | 2025-09-26 08:42:27,084 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:42:27,084 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:42:57 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:42:27,110 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} repositoryactioncounter stdout | 2025-09-26 08:42:27,200 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} exportactionlogsworker stdout | 2025-09-26 08:42:27,382 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} manifestsubjectbackfillworker stdout | 2025-09-26 08:42:27,918 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} repositorygcworker stdout | 2025-09-26 08:42:28,077 [81] [DEBUG] [apscheduler.scheduler] Looking for jobs to run repositorygcworker stdout | 2025-09-26 08:42:28,077 [81] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:19.075668+00:00 (in 50.997992 seconds) repositorygcworker stdout | 2025-09-26 08:42:28,077 [81] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:28 GMT)" (scheduled at 2025-09-26 08:42:28.077240+00:00) repositorygcworker stdout | 2025-09-26 08:42:28,078 [81] [DEBUG] [workers.queueworker] Running watchdog. repositorygcworker stdout | 2025-09-26 08:42:28,078 [81] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:28 GMT)" executed successfully securityscanningnotificationworker stdout | 2025-09-26 08:42:28,587 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:42:28,587 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:10.584403+00:00 (in 41.996818 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:42:28,587 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:28 GMT)" (scheduled at 2025-09-26 08:42:28.587130+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:42:28,587 [82] [DEBUG] [workers.queueworker] Running watchdog. securityscanningnotificationworker stdout | 2025-09-26 08:42:28,587 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:28 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:42:30,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:42:30,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:37.771811+00:00 (in 7.078071 seconds) notificationworker stdout | 2025-09-26 08:42:30,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:40 GMT)" (scheduled at 2025-09-26 08:42:30.692901+00:00) notificationworker stdout | 2025-09-26 08:42:30,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:42:30,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 42, 30, 694013), True, datetime.datetime(2025, 9, 26, 8, 42, 30, 694013), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:42:30,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:42:30,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:42:30,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:40 GMT)" executed successfully proxycacheblobworker stdout | 2025-09-26 08:42:32,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:42:32,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:42.477454+00:00 (in 9.999578 seconds) proxycacheblobworker stdout | 2025-09-26 08:42:32,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:42 GMT)" (scheduled at 2025-09-26 08:42:32.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:42:32,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:42:32,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 42, 32, 478240), True, datetime.datetime(2025, 9, 26, 8, 42, 32, 478240), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:42:32,485 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:42:32,485 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:42:32,485 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:42 GMT)" executed successfully storagereplication stdout | 2025-09-26 08:42:32,739 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} namespacegcworker stdout | 2025-09-26 08:42:33,117 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-web stdout | 2025-09-26 08:42:33,199 [250] [DEBUG] [app] Starting request: urn:request:16594a5e-c9c0-4e7e-ab30-81c6705a06b8 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:42:33,200 [250] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:42:33,202 [251] [DEBUG] [app] Starting request: urn:request:900f5e2e-79bb-4f4b-9b7d-269db5041b38 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:42:33,202 [251] [DEBUG] [app] Ending request: urn:request:900f5e2e-79bb-4f4b-9b7d-269db5041b38 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:900f5e2e-79bb-4f4b-9b7d-269db5041b38', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:42:33,202 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:42:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:42:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:42:33,202 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:42:33,203 [250] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:42:33,205 [250] [DEBUG] [app] Starting request: urn:request:c139511c-06d3-44fd-8695-0ba431ba0de1 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:42:33,206 [250] [DEBUG] [app] Ending request: urn:request:c139511c-06d3-44fd-8695-0ba431ba0de1 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:c139511c-06d3-44fd-8695-0ba431ba0de1', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:42:33,206 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:42:33 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:42:33 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.002) gunicorn-web stdout | 2025-09-26 08:42:33,207 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:42:33,207 [250] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:42:33,207 [250] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:42:33,207 [250] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:42:33,212 [250] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:42:33,212 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:42:33,216 [250] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:42:33,217 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:42:33,217 [250] [DEBUG] [app] Ending request: urn:request:16594a5e-c9c0-4e7e-ab30-81c6705a06b8 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:16594a5e-c9c0-4e7e-ab30-81c6705a06b8', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:42:33,218 [250] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:42:33,218 [250] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:42:33 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:42:33 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.020 118 0.020) gunicorn-web stdout | 2025-09-26 08:42:33,261 [250] [DEBUG] [app] Starting request: urn:request:3f02bced-248e-48ff-a88a-f41d64f1ea71 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:42:33,263 [251] [DEBUG] [app] Starting request: urn:request:28cbc84a-8dd9-4335-a204-43223d489dc8 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:42:33,263 [251] [DEBUG] [app] Ending request: urn:request:28cbc84a-8dd9-4335-a204-43223d489dc8 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:28cbc84a-8dd9-4335-a204-43223d489dc8', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:42:33,263 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:42:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:42:33 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:42:33,264 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:42:33,264 [250] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:42:33,269 [250] [DEBUG] [app] Starting request: urn:request:312d39c7-729f-4c6e-b0eb-70d137bd5e6d (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:42:33,270 [250] [DEBUG] [app] Ending request: urn:request:312d39c7-729f-4c6e-b0eb-70d137bd5e6d (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:312d39c7-729f-4c6e-b0eb-70d137bd5e6d', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:42:33,270 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:42:33 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:42:33 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.005 159 0.005) gunicorn-web stdout | 2025-09-26 08:42:33,271 [250] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:42:33,271 [250] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:42:33,272 [250] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:42:33,272 [250] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:42:33,276 [250] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:42:33,276 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:42:33,281 [250] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:42:33,282 [250] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:42:33,283 [250] [DEBUG] [app] Ending request: urn:request:3f02bced-248e-48ff-a88a-f41d64f1ea71 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:3f02bced-248e-48ff-a88a-f41d64f1ea71', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:42:33,283 [250] [DEBUG] [data.database] Disconnecting from database. nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:42:33 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.023 118 0.023) gunicorn-web stdout | 2025-09-26 08:42:33,283 [250] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:42:33 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" manifestsubjectbackfillworker stdout | 2025-09-26 08:42:33,984 [64] [DEBUG] [apscheduler.scheduler] Looking for jobs to run manifestsubjectbackfillworker stdout | 2025-09-26 08:42:33,985 [64] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:17.985743+00:00 (in 44.000532 seconds) manifestsubjectbackfillworker stdout | 2025-09-26 08:42:33,985 [64] [INFO] [apscheduler.executors.default] Running job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:33 GMT)" (scheduled at 2025-09-26 08:42:33.984400+00:00) manifestsubjectbackfillworker stdout | 2025-09-26 08:42:33,985 [64] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled" FROM "manifest" AS "t1" WHERE (("t1"."subject_backfilled" = %s) OR ("t1"."subject_backfilled" IS %s)) LIMIT %s OFFSET %s', [False, None, 1, 0]) manifestsubjectbackfillworker stdout | 2025-09-26 08:42:33,992 [64] [DEBUG] [__main__] Manifest subject backfill worker has completed; skipping manifestsubjectbackfillworker stdout | 2025-09-26 08:42:33,992 [64] [DEBUG] [data.database] Disconnecting from database. manifestsubjectbackfillworker stdout | 2025-09-26 08:42:33,992 [64] [INFO] [apscheduler.executors.default] Job "ManifestSubjectBackfillWorker._backfill_manifest_subject (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:33 GMT)" executed successfully autopruneworker stdout | 2025-09-26 08:42:34,509 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} expiredappspecifictokenworker stdout | 2025-09-26 08:42:34,580 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} manifestbackfillworker stdout | 2025-09-26 08:42:34,811 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} builder stdout | 2025-09-26 08:42:35,201 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} logrotateworker stdout | 2025-09-26 08:42:36,529 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gcworker stdout | 2025-09-26 08:42:37,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:42:37,085 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:57.083344+00:00 (in 19.997576 seconds) gcworker stdout | 2025-09-26 08:42:37,085 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:43:07 GMT)" (scheduled at 2025-09-26 08:42:37.085344+00:00) gcworker stdout | 2025-09-26 08:42:37,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gcworker stdout | 2025-09-26 08:42:37,092 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875857091, None, 1, 0]) gcworker stdout | 2025-09-26 08:42:37,094 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:42:37,094 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:43:07 GMT)" executed successfully securityworker stdout | 2025-09-26 08:42:37,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:42:37,683 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:41.684816+00:00 (in 4.000889 seconds) securityworker stdout | 2025-09-26 08:42:37,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:43:07 GMT)" (scheduled at 2025-09-26 08:42:37.683505+00:00) securityworker stdout | 2025-09-26 08:42:37,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:42:37,684 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:42:37,686 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:42:37,687 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:42:37,693 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:42:37,694 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:43:07 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:42:37,772 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:42:37,772 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:40.692901+00:00 (in 2.920646 seconds) notificationworker stdout | 2025-09-26 08:42:37,772 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:37 GMT)" (scheduled at 2025-09-26 08:42:37.771811+00:00) notificationworker stdout | 2025-09-26 08:42:37,772 [68] [DEBUG] [workers.queueworker] Running watchdog. notificationworker stdout | 2025-09-26 08:42:37,772 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:37 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:42:39,876 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:42:39,881 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:42:39,891 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:42:39,905 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:42:39,916 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gcworker stdout | 2025-09-26 08:42:39,987 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} securityscanningnotificationworker stdout | 2025-09-26 08:42:40,179 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} queuecleanupworker stdout | 2025-09-26 08:42:40,408 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} autopruneworker stdout | 2025-09-26 08:42:40,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:42:40,598 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:10.598100+00:00 (in 29.999511 seconds) autopruneworker stdout | 2025-09-26 08:42:40,598 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:43:10 GMT)" (scheduled at 2025-09-26 08:42:40.598100+00:00) gunicorn-secscan stdout | 2025-09-26 08:42:40,603 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} autopruneworker stdout | 2025-09-26 08:42:40,604 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758872560603, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:42:40,607 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:42:40,607 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:42:40,607 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:43:10 GMT)" executed successfully gunicorn-secscan stdout | 2025-09-26 08:42:40,609 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:42:40,613 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} notificationworker stdout | 2025-09-26 08:42:40,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:42:40,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:50.692901+00:00 (in 9.999201 seconds) notificationworker stdout | 2025-09-26 08:42:40,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:50 GMT)" (scheduled at 2025-09-26 08:42:40.692901+00:00) notificationworker stdout | 2025-09-26 08:42:40,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:42:40,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 42, 40, 694006), True, datetime.datetime(2025, 9, 26, 8, 42, 40, 694006), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:42:40,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:42:40,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:42:40,701 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:50 GMT)" executed successfully chunkcleanupworker stdout | 2025-09-26 08:42:41,234 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} securityworker stdout | 2025-09-26 08:42:41,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:42:41,685 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:07.683505+00:00 (in 25.998227 seconds) securityworker stdout | 2025-09-26 08:42:41,685 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:43:11 GMT)" (scheduled at 2025-09-26 08:42:41.684816+00:00) securityworker stdout | 2025-09-26 08:42:41,685 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:42:41,685 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:42:41,688 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:42:41,690 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:42:41,697 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:42:41,697 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:42:41,697 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:42:41,697 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:42:41,699 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 36]) securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:42:41,700 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:42:41,700 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:42:41,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:42:41,700 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:42:41,700 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:42:41,700 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:42:41,700 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:42:41,700 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:42:41,700 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:42:41,700 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:42:41,700 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:42:41,701 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 37, 41, 690433), 1, 36]) securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:42:41,702 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:42:41,702 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:42:41,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:42:41,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:42:41,702 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:42:41,702 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:42:41,702 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:42:41,702 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:42:41,702 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:42:41,702 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:42:41,702 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:42:41,703 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 37, 41, 690433), 1, 36]) securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:42:41,704 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:42:41,704 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:42:41,704 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:42:41,704 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:42:41,704 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:42:41,705 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:42:41,705 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:42:41 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:42:41,705 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:42:41,705 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:43:11 GMT)" executed successfully repositorygcworker stdout | 2025-09-26 08:42:42,209 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} proxycacheblobworker stdout | 2025-09-26 08:42:42,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:42:42,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:42.481458+00:00 (in 0.003567 seconds) proxycacheblobworker stdout | 2025-09-26 08:42:42,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:52 GMT)" (scheduled at 2025-09-26 08:42:42.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:42:42,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:42:42,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 42, 42, 478264), True, datetime.datetime(2025, 9, 26, 8, 42, 42, 478264), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:42:42,481 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:42:42,481 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:52.477454+00:00 (in 9.995676 seconds) proxycacheblobworker stdout | 2025-09-26 08:42:42,481 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:47:42 GMT)" (scheduled at 2025-09-26 08:42:42.481458+00:00) proxycacheblobworker stdout | 2025-09-26 08:42:42,482 [69] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [False, datetime.datetime(2025, 9, 26, 8, 42, 42, 482046), 'proxycacheblob/%']) proxycacheblobworker stdout | 2025-09-26 08:42:42,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:42:42,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:42:42,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:42:52 GMT)" executed successfully proxycacheblobworker stdout | 2025-09-26 08:42:42,488 [69] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 42, 42, 482046), True, datetime.datetime(2025, 9, 26, 8, 42, 42, 482046), 0, 'proxycacheblob/%']) proxycacheblobworker stdout | 2025-09-26 08:42:42,490 [69] [DEBUG] [peewee] ('SELECT COUNT(1) FROM (SELECT DISTINCT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) AND NOT ("t1"."queue_name" IN (SELECT "t1"."queue_name" FROM "queueitem" AS "t1" WHERE ((("t1"."available" = %s) AND ("t1"."processing_expires" > %s)) AND ("t1"."queue_name" ILIKE %s)))))) AS "_wrapped"', [datetime.datetime(2025, 9, 26, 8, 42, 42, 482046), True, datetime.datetime(2025, 9, 26, 8, 42, 42, 482046), 0, 'proxycacheblob/%', False, datetime.datetime(2025, 9, 26, 8, 42, 42, 482046), 'proxycacheblob/%']) proxycacheblobworker stdout | 2025-09-26 08:42:42,491 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:42:42,491 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.update_queue_metrics (trigger: interval[0:05:00], next run at: 2025-09-26 08:47:42 GMT)" executed successfully servicekey stdout | 2025-09-26 08:42:42,828 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:42:42,905 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'} gunicorn-registry stdout | 2025-09-26 08:42:44,448 [253] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '253'} gunicorn-registry stdout | 2025-09-26 08:42:44,455 [59] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '59'} gunicorn-registry stdout | 2025-09-26 08:42:44,473 [257] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '257'} gunicorn-registry stdout | 2025-09-26 08:42:44,519 [255] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '255'} gunicorn-registry stdout | 2025-09-26 08:42:44,540 [258] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '258'} gunicorn-registry stdout | 2025-09-26 08:42:44,554 [251] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '251'} gunicorn-registry stdout | 2025-09-26 08:42:44,561 [254] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '254'} gunicorn-registry stdout | 2025-09-26 08:42:44,564 [256] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '256'} gunicorn-registry stdout | 2025-09-26 08:42:44,568 [252] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'registry:application', 'pid': '252'} buildlogsarchiver stdout | 2025-09-26 08:42:45,731 [52] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'buildlogsarchiver.py', 'pid': '52'} buildlogsarchiver stdout | 2025-09-26 08:42:47,375 [52] [DEBUG] [apscheduler.scheduler] Looking for jobs to run buildlogsarchiver stdout | 2025-09-26 08:42:47,375 [52] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:17.375102+00:00 (in 29.999572 seconds) buildlogsarchiver stdout | 2025-09-26 08:42:47,375 [52] [INFO] [apscheduler.executors.default] Running job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:43:17 GMT)" (scheduled at 2025-09-26 08:42:47.375102+00:00) buildlogsarchiver stdout | 2025-09-26 08:42:47,376 [52] [DEBUG] [peewee] ('SELECT "candidates"."id" FROM (SELECT "t1"."id" FROM "repositorybuild" AS "t1" WHERE ((("t1"."phase" IN (%s, %s, %s)) OR ("t1"."started" < %s)) AND ("t1"."logs_archived" = %s)) LIMIT %s) AS "candidates" ORDER BY Random() LIMIT %s OFFSET %s', ['complete', 'error', 'cancelled', datetime.datetime(2025, 9, 11, 8, 42, 47, 375805), False, 50, 1, 0]) buildlogsarchiver stdout | 2025-09-26 08:42:47,383 [52] [DEBUG] [__main__] No more builds to archive buildlogsarchiver stdout | 2025-09-26 08:42:47,383 [52] [DEBUG] [data.database] Disconnecting from database. buildlogsarchiver stdout | 2025-09-26 08:42:47,383 [52] [INFO] [apscheduler.executors.default] Job "ArchiveBuildLogsWorker._archive_redis_buildlogs (trigger: interval[0:00:30], next run at: 2025-09-26 08:43:17 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:42:48,199 [247] [DEBUG] [app] Starting request: urn:request:e27f37dd-344e-4391-9846-f737da7a6250 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:42:48,204 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:42:48,206 [251] [DEBUG] [app] Starting request: urn:request:cf9f05e6-388e-4e0c-a840-53e362834689 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:42:48,206 [251] [DEBUG] [app] Ending request: urn:request:cf9f05e6-388e-4e0c-a840-53e362834689 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:cf9f05e6-388e-4e0c-a840-53e362834689', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:42:48,206 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:42:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:42:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:42:48,206 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:42:48,208 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:42:48,209 [247] [DEBUG] [app] Starting request: urn:request:4c3fed63-37b1-40df-b8a8-3982e592854b (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:42:48,209 [247] [DEBUG] [app] Ending request: urn:request:4c3fed63-37b1-40df-b8a8-3982e592854b (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:4c3fed63-37b1-40df-b8a8-3982e592854b', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} gunicorn-web stdout | 2025-09-26 08:42:48,210 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:42:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:42:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.001) gunicorn-web stdout | 2025-09-26 08:42:48,210 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:42:48,210 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:42:48,210 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:42:48,210 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:42:48,215 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:42:48,216 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:42:48,220 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:42:48,222 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:42:48,222 [247] [DEBUG] [app] Ending request: urn:request:e27f37dd-344e-4391-9846-f737da7a6250 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:e27f37dd-344e-4391-9846-f737da7a6250', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:42:48,222 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:42:48,223 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:42:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:42:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.025 118 0.024) gunicorn-web stdout | 2025-09-26 08:42:48,262 [247] [DEBUG] [app] Starting request: urn:request:b6166baa-3df8-4b78-a235-3e5dd767288f (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:42:48,263 [258] [DEBUG] [app] Starting request: urn:request:0d36a9fa-acbc-4940-99f3-677f10aa9967 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:42:48,264 [258] [DEBUG] [app] Ending request: urn:request:0d36a9fa-acbc-4940-99f3-677f10aa9967 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:0d36a9fa-acbc-4940-99f3-677f10aa9967', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:42:48,264 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:42:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:42:48,264 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:42:48 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 162 0.001) gunicorn-web stdout | 2025-09-26 08:42:48,265 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:42:48,267 [250] [DEBUG] [app] Starting request: urn:request:17489514-cbef-4e00-a634-1d9b03360677 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:42:48,267 [250] [DEBUG] [app] Ending request: urn:request:17489514-cbef-4e00-a634-1d9b03360677 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:17489514-cbef-4e00-a634-1d9b03360677', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:42:48 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:42:48,267 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:42:48 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:42:48,267 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:42:48,269 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:42:48,269 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:42:48,269 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:42:48,272 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:42:48,273 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:42:48,276 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:42:48,277 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:42:48,278 [247] [DEBUG] [app] Ending request: urn:request:b6166baa-3df8-4b78-a235-3e5dd767288f (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:b6166baa-3df8-4b78-a235-3e5dd767288f', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:42:48,278 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:42:48,278 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:42:48 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:42:48 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.017 118 0.017) securityworker stdout | 2025-09-26 08:42:48,943 [86] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityworker.py', 'pid': '86'} notificationworker stdout | 2025-09-26 08:42:50,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:42:50,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:00.692901+00:00 (in 9.999180 seconds) notificationworker stdout | 2025-09-26 08:42:50,694 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:43:00 GMT)" (scheduled at 2025-09-26 08:42:50.692901+00:00) notificationworker stdout | 2025-09-26 08:42:50,694 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:42:50,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 42, 50, 694337), True, datetime.datetime(2025, 9, 26, 8, 42, 50, 694337), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:42:50,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:42:50,701 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:42:50,702 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:43:00 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:42:50,885 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:42:50,886 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:42:52.886914+00:00 (in 2.000804 seconds) exportactionlogsworker stdout | 2025-09-26 08:42:50,886 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:50 GMT)" (scheduled at 2025-09-26 08:42:50.885619+00:00) exportactionlogsworker stdout | 2025-09-26 08:42:50,886 [56] [DEBUG] [workers.queueworker] Getting work item from queue. exportactionlogsworker stdout | 2025-09-26 08:42:50,887 [56] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 42, 50, 886440), True, datetime.datetime(2025, 9, 26, 8, 42, 50, 886440), 0, 'exportactionlogs/%', 50, 1, 0]) exportactionlogsworker stdout | 2025-09-26 08:42:50,893 [56] [DEBUG] [workers.queueworker] No more work. exportactionlogsworker stdout | 2025-09-26 08:42:50,893 [56] [DEBUG] [data.database] Disconnecting from database. exportactionlogsworker stdout | 2025-09-26 08:42:50,893 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:50 GMT)" executed successfully blobuploadcleanupworker stdout | 2025-09-26 08:42:52,274 [50] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'blobuploadcleanupworker.py', 'pid': '50'} proxycacheblobworker stdout | 2025-09-26 08:42:52,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:42:52,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:02.477454+00:00 (in 9.999608 seconds) proxycacheblobworker stdout | 2025-09-26 08:42:52,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:43:02 GMT)" (scheduled at 2025-09-26 08:42:52.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:42:52,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:42:52,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 42, 52, 478255), True, datetime.datetime(2025, 9, 26, 8, 42, 52, 478255), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:42:52,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:42:52,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:42:52,486 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:43:02 GMT)" executed successfully exportactionlogsworker stdout | 2025-09-26 08:42:52,887 [56] [DEBUG] [apscheduler.scheduler] Looking for jobs to run exportactionlogsworker stdout | 2025-09-26 08:42:52,887 [56] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:50.885619+00:00 (in 57.998064 seconds) exportactionlogsworker stdout | 2025-09-26 08:42:52,887 [56] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:52 GMT)" (scheduled at 2025-09-26 08:42:52.886914+00:00) exportactionlogsworker stdout | 2025-09-26 08:42:52,887 [56] [DEBUG] [workers.queueworker] Running watchdog. exportactionlogsworker stdout | 2025-09-26 08:42:52,887 [56] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:52 GMT)" executed successfully globalpromstats stdout | 2025-09-26 08:42:55,326 [58] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'globalpromstats.py', 'pid': '58'} proxycacheblobworker stdout | 2025-09-26 08:42:56,032 [69] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'proxycacheblobworker.py', 'pid': '69'} gcworker stdout | 2025-09-26 08:42:57,083 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:42:57,084 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:07.085344+00:00 (in 10.001197 seconds) gcworker stdout | 2025-09-26 08:42:57,084 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:43:27 GMT)" (scheduled at 2025-09-26 08:42:57.083344+00:00) gcworker stdout | 2025-09-26 08:42:57,084 [57] [DEBUG] [__main__] No GC policies found gcworker stdout | 2025-09-26 08:42:57,084 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._garbage_collection_repos (trigger: interval[0:00:30], next run at: 2025-09-26 08:43:27 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:42:57,125 [68] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'notificationworker.py', 'pid': '68'} repositoryactioncounter stdout | 2025-09-26 08:42:57,215 [76] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositoryactioncounter.py', 'pid': '76'} exportactionlogsworker stdout | 2025-09-26 08:42:57,397 [56] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'exportactionlogsworker.py', 'pid': '56'} manifestsubjectbackfillworker stdout | 2025-09-26 08:42:57,934 [64] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestsubjectbackfillworker.py', 'pid': '64'} namespacegcworker stdout | 2025-09-26 08:42:59,791 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:42:59,791 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:08.793810+00:00 (in 9.002267 seconds) namespacegcworker stdout | 2025-09-26 08:42:59,791 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:59 GMT)" (scheduled at 2025-09-26 08:42:59.791127+00:00) namespacegcworker stdout | 2025-09-26 08:42:59,791 [66] [DEBUG] [workers.queueworker] Getting work item from queue. namespacegcworker stdout | 2025-09-26 08:42:59,807 [66] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 42, 59, 791891), True, datetime.datetime(2025, 9, 26, 8, 42, 59, 791891), 0, 'namespacegc/%', 50, 1, 0]) namespacegcworker stdout | 2025-09-26 08:42:59,814 [66] [DEBUG] [workers.queueworker] No more work. namespacegcworker stdout | 2025-09-26 08:42:59,814 [66] [DEBUG] [data.database] Disconnecting from database. namespacegcworker stdout | 2025-09-26 08:42:59,814 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:43:59 GMT)" executed successfully notificationworker stdout | 2025-09-26 08:43:00,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:43:00,693 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:10.692901+00:00 (in 9.999556 seconds) notificationworker stdout | 2025-09-26 08:43:00,693 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:43:10 GMT)" (scheduled at 2025-09-26 08:43:00.692901+00:00) notificationworker stdout | 2025-09-26 08:43:00,693 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:43:00,694 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 43, 0, 693968), True, datetime.datetime(2025, 9, 26, 8, 43, 0, 693968), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:43:00,700 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:43:00,700 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:43:00,700 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:43:10 GMT)" executed successfully proxycacheblobworker stdout | 2025-09-26 08:43:02,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:43:02,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:12.477454+00:00 (in 9.999541 seconds) proxycacheblobworker stdout | 2025-09-26 08:43:02,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:43:12 GMT)" (scheduled at 2025-09-26 08:43:02.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:43:02,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:43:02,478 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 43, 2, 478300), True, datetime.datetime(2025, 9, 26, 8, 43, 2, 478300), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:43:02,485 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:43:02,485 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:43:02,485 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:43:12 GMT)" executed successfully storagereplication stdout | 2025-09-26 08:43:02,756 [90] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'storagereplication.py', 'pid': '90'} namespacegcworker stdout | 2025-09-26 08:43:03,133 [66] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'namespacegcworker.py', 'pid': '66'} gunicorn-web stdout | 2025-09-26 08:43:03,200 [247] [DEBUG] [app] Starting request: urn:request:c7be6acf-fd6a-46ad-a6b6-ef6535023681 (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-web stdout | 2025-09-26 08:43:03,201 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-registry stdout | 2025-09-26 08:43:03,203 [258] [DEBUG] [app] Starting request: urn:request:4b947a4a-9325-4928-a22c-ff288c04c039 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:43:03,203 [258] [DEBUG] [app] Ending request: urn:request:4b947a4a-9325-4928-a22c-ff288c04c039 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:4b947a4a-9325-4928-a22c-ff288c04c039', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:43:03,204 [258] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:43:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:43:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:43:03,204 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:43:03,206 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:43:03,207 [247] [DEBUG] [app] Starting request: urn:request:11a60be2-b06b-4c1e-a4f2-c309e7245f36 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:43:03,207 [247] [DEBUG] [app] Ending request: urn:request:11a60be2-b06b-4c1e-a4f2-c309e7245f36 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:11a60be2-b06b-4c1e-a4f2-c309e7245f36', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:43:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 159 0.001) gunicorn-web stdout | 2025-09-26 08:43:03,208 [247] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:43:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:43:03,208 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:43:03,208 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:43:03,208 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:43:03,208 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:43:03,213 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:43:03,213 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:43:03,217 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:43:03,219 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:43:03,219 [247] [DEBUG] [app] Ending request: urn:request:c7be6acf-fd6a-46ad-a6b6-ef6535023681 (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:c7be6acf-fd6a-46ad-a6b6-ef6535023681', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:43:03,219 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:43:03,220 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:43:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:43:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.022 118 0.022) gunicorn-web stdout | 2025-09-26 08:43:03,261 [247] [DEBUG] [app] Starting request: urn:request:4657c0d7-7154-4df5-a6db-0540d2e62c7b (/health/instance) {'X-Forwarded-For': '10.130.2.2'} gunicorn-registry stdout | 2025-09-26 08:43:03,263 [251] [DEBUG] [app] Starting request: urn:request:93f2e2a4-c698-426f-8560-104708d70487 (/v1/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-registry stdout | 2025-09-26 08:43:03,264 [251] [DEBUG] [app] Ending request: urn:request:93f2e2a4-c698-426f-8560-104708d70487 (/v1/_internal_ping) {'endpoint': 'v1.internal_ping', 'request_id': 'urn:request:93f2e2a4-c698-426f-8560-104708d70487', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/v1/_internal_ping', 'path': '/v1/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'bac6e69a', 'user-agent': 'python-requests/2.32.2'} gunicorn-registry stdout | 2025-09-26 08:43:03,264 [251] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:43:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:43:03 +0000] "GET /v1/_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.002 162 0.002) gunicorn-web stdout | 2025-09-26 08:43:03,264 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /v1/_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:43:03,265 [247] [DEBUG] [urllib3.connectionpool] Resetting dropped connection: localhost gunicorn-web stdout | 2025-09-26 08:43:03,267 [250] [DEBUG] [app] Starting request: urn:request:96cb5df5-076d-4f5b-8523-8c96cfe7a2d6 (/_internal_ping) {'X-Forwarded-For': '127.0.0.1'} gunicorn-web stdout | 2025-09-26 08:43:03,267 [250] [DEBUG] [app] Ending request: urn:request:96cb5df5-076d-4f5b-8523-8c96cfe7a2d6 (/_internal_ping) {'endpoint': 'web.internal_ping', 'request_id': 'urn:request:96cb5df5-076d-4f5b-8523-8c96cfe7a2d6', 'remote_addr': '127.0.0.1', 'http_method': 'GET', 'original_url': 'http://localhost/_internal_ping', 'path': '/_internal_ping', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'python-requests/2.32.2'} nginx stdout | 127.0.0.1 (-) - - [26/Sep/2025:08:43:03 +0000] "GET /_internal_ping HTTP/1.1" 200 4 "-" "python-requests/2.32.2" (0.001 159 0.001) gunicorn-web stdout | 2025-09-26 08:43:03,267 [250] [INFO] [gunicorn.access] 127.0.0.1 - - [26/Sep/2025:08:43:03 +0000] "GET /_internal_ping HTTP/1.0" 200 4 "-" "python-requests/2.32.2" gunicorn-web stdout | 2025-09-26 08:43:03,267 [247] [DEBUG] [urllib3.connectionpool] http://localhost:8080 "GET /_internal_ping HTTP/1.1" 200 4 gunicorn-web stdout | 2025-09-26 08:43:03,268 [247] [DEBUG] [data.model.health] Validating database connection. gunicorn-web stdout | 2025-09-26 08:43:03,268 [247] [INFO] [data.database] Setting database host to quayregistry-quay-database for worker gunicorn-web gunicorn-web stdout | 2025-09-26 08:43:03,268 [247] [INFO] [data.database] Connection pooling disabled for postgresql gunicorn-web stdout | 2025-09-26 08:43:03,272 [247] [DEBUG] [data.model.health] Checking for existence of team roles, timeout 5000 ms. gunicorn-web stdout | 2025-09-26 08:43:03,272 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (5000,)) gunicorn-web stdout | 2025-09-26 08:43:03,276 [247] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "teamrole" AS "t1" LIMIT %s', [1]) gunicorn-web stdout | 2025-09-26 08:43:03,277 [247] [DEBUG] [peewee] ('SET statement_timeout=%s;', (0,)) gunicorn-web stdout | 2025-09-26 08:43:03,277 [247] [DEBUG] [app] Ending request: urn:request:4657c0d7-7154-4df5-a6db-0540d2e62c7b (/health/instance) {'endpoint': 'web.instance_health', 'request_id': 'urn:request:4657c0d7-7154-4df5-a6db-0540d2e62c7b', 'remote_addr': '10.130.2.2', 'http_method': 'GET', 'original_url': 'http://10.130.2.34/health/instance', 'path': '/health/instance', 'parameters': {}, 'json_body': None, 'confsha': 'ab94b86d', 'user-agent': 'kube-probe/1.32'} gunicorn-web stdout | 2025-09-26 08:43:03,277 [247] [DEBUG] [data.database] Disconnecting from database. gunicorn-web stdout | 2025-09-26 08:43:03,278 [247] [INFO] [gunicorn.access] 10.130.2.2 - - [26/Sep/2025:08:43:03 +0000] "GET /health/instance HTTP/1.0" 200 152 "-" "kube-probe/1.32" nginx stdout | 10.130.2.2 (-) - - [26/Sep/2025:08:43:03 +0000] "GET /health/instance HTTP/1.1" 200 152 "-" "kube-probe/1.32" (0.018 118 0.018) autopruneworker stdout | 2025-09-26 08:43:04,525 [49] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'autopruneworker.py', 'pid': '49'} expiredappspecifictokenworker stdout | 2025-09-26 08:43:04,593 [55] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'expiredappspecifictokenworker.py', 'pid': '55'} manifestbackfillworker stdout | 2025-09-26 08:43:04,828 [63] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'manifestbackfillworker.py', 'pid': '63'} builder stdout | 2025-09-26 08:43:05,218 [51] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'builder.py', 'pid': '51'} logrotateworker stdout | 2025-09-26 08:43:06,545 [62] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'logrotateworker.py', 'pid': '62'} gcworker stdout | 2025-09-26 08:43:07,085 [57] [DEBUG] [apscheduler.scheduler] Looking for jobs to run gcworker stdout | 2025-09-26 08:43:07,085 [57] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:27.083344+00:00 (in 19.997551 seconds) gcworker stdout | 2025-09-26 08:43:07,085 [57] [INFO] [apscheduler.executors.default] Running job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:43:37 GMT)" (scheduled at 2025-09-26 08:43:07.085344+00:00) gcworker stdout | 2025-09-26 08:43:07,086 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."name" FROM "externalnotificationevent" AS "t1" WHERE ("t1"."name" = %s) LIMIT %s OFFSET %s', ['repo_image_expiry', 1, 0]) gcworker stdout | 2025-09-26 08:43:07,093 [57] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."uuid", "t1"."method_id", "t1"."repository_id", "t1"."event_config_json" FROM "repositorynotification" AS "t1" WHERE ((("t1"."event_id" = %s) AND ("t1"."number_of_failures" < %s)) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [11, 3, 1758875887092, None, 1, 0]) gcworker stdout | 2025-09-26 08:43:07,095 [57] [DEBUG] [data.database] Disconnecting from database. gcworker stdout | 2025-09-26 08:43:07,095 [57] [INFO] [apscheduler.executors.default] Job "GarbageCollectionWorker._scan_notifications (trigger: interval[0:00:30], next run at: 2025-09-26 08:43:37 GMT)" executed successfully securityworker stdout | 2025-09-26 08:43:07,683 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:43:07,683 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:11.684816+00:00 (in 4.000844 seconds) securityworker stdout | 2025-09-26 08:43:07,684 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:43:37 GMT)" (scheduled at 2025-09-26 08:43:07.683505+00:00) securityworker stdout | 2025-09-26 08:43:07,684 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:43:07,684 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:43:07,686 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:43:07,688 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stdout | 2025-09-26 08:43:07,694 [86] [DEBUG] [peewee] ('SELECT Min("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:43:07,694 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:43:07,694 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:43:07,694 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:43:07,694 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:43:07,695 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 3, 11]) securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 3-11 by worker securityworker stdout | 2025-09-26 08:43:07,696 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 3-11 by worker securityworker stdout | 2025-09-26 08:43:07,697 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 3-11 securityworker stdout | 2025-09-26 08:43:07,697 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 3-11 securityworker stdout | 2025-09-26 08:43:07,697 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:43:07,697 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:43:07,697 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:43:07,697 [86] [DEBUG] [util.migrate.allocator] Right range 3-11 securityworker stdout | 2025-09-26 08:43:07,697 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-3 securityworker stdout | 2025-09-26 08:43:07,697 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 3-11 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 3-11 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Right range 3-11 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-3 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:43:07,697 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 9]) securityworker stdout | 2025-09-26 08:43:07,698 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stdout | 2025-09-26 08:43:07,698 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stdout | 2025-09-26 08:43:07,698 [86] [DEBUG] [util.migrate.allocator] Merging with block 3-11 securityworker stdout | 2025-09-26 08:43:07,698 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 11 securityworker stdout | 2025-09-26 08:43:07,698 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:43:07,698 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:43:07,698 [86] [DEBUG] [util.migrate.allocator] Total range: 11-36 securityworker stdout | 2025-09-26 08:43:07,698 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:43:07,698 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 11-36 securityworker stdout | 2025-09-26 08:43:07,698 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 3-11 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 11 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total range: 11-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 11-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:43:07,699 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 18, 26]) securityworker stdout | 2025-09-26 08:43:07,700 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 18-26 by worker securityworker stdout | 2025-09-26 08:43:07,700 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 18-26 securityworker stdout | 2025-09-26 08:43:07,700 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 18-26 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 18-26 by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 18-26 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 18-26 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:43:07,700 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:43:07,700 [86] [DEBUG] [util.migrate.allocator] Total range: 11-36 securityworker stdout | 2025-09-26 08:43:07,700 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:43:07,700 [86] [DEBUG] [util.migrate.allocator] Right range 18-26 securityworker stdout | 2025-09-26 08:43:07,700 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 11-18 securityworker stdout | 2025-09-26 08:43:07,700 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 11 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total range: 11-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Right range 18-26 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 11-18 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 11 securityworker stdout | 2025-09-26 08:43:07,701 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 11, 19]) securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 11-19 by worker securityworker stdout | 2025-09-26 08:43:07,702 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 11-19 by worker securityworker stdout | 2025-09-26 08:43:07,702 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 11-19 securityworker stdout | 2025-09-26 08:43:07,702 [86] [DEBUG] [util.migrate.allocator] Merging with block 18-26 securityworker stdout | 2025-09-26 08:43:07,702 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 26 securityworker stdout | 2025-09-26 08:43:07,702 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:43:07,702 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:43:07,702 [86] [DEBUG] [util.migrate.allocator] Total range: 26-36 securityworker stdout | 2025-09-26 08:43:07,702 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:43:07,702 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 26-36 securityworker stdout | 2025-09-26 08:43:07,702 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 11-19 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 18-26 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 26 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total range: 26-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 26-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:43:07,703 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 28, 36]) securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 28-36 by worker securityworker stdout | 2025-09-26 08:43:07,703 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 28-36 by worker securityworker stdout | 2025-09-26 08:43:07,703 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 28-36 securityworker stdout | 2025-09-26 08:43:07,703 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 28 securityworker stdout | 2025-09-26 08:43:07,703 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:43:07,703 [86] [DEBUG] [util.migrate.allocator] Total range: 26-28 securityworker stdout | 2025-09-26 08:43:07,703 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:43:07,703 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 26-28 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 28-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 28 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total range: 26-28 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 26-28 securityworker stdout | 2025-09-26 08:43:07,703 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 26 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 26 securityworker stdout | 2025-09-26 08:43:07,704 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 26, 34]) securityworker stdout | 2025-09-26 08:43:07,704 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 26-34 by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 26-34 by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 26-34 securityworker stdout | 2025-09-26 08:43:07,705 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 26-34 securityworker stdout | 2025-09-26 08:43:07,705 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 26 securityworker stdout | 2025-09-26 08:43:07,705 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 34 securityworker stdout | 2025-09-26 08:43:07,705 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:43:07,705 [86] [DEBUG] [util.migrate.allocator] Total range: 34-26 securityworker stdout | 2025-09-26 08:43:07,705 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:43:07,705 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 26 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 34 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total range: 34-26 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:43:07,705 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:43:07,705 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:43:07,705 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:43:07,705 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 38, 7, 688408), 1, 9]) securityworker stdout | 2025-09-26 08:43:07,706 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stdout | 2025-09-26 08:43:07,706 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stdout | 2025-09-26 08:43:07,706 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 9 securityworker stdout | 2025-09-26 08:43:07,706 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:43:07,706 [86] [DEBUG] [util.migrate.allocator] Total range: 9-36 securityworker stdout | 2025-09-26 08:43:07,706 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:43:07,706 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 9-36 securityworker stdout | 2025-09-26 08:43:07,706 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 9 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total range: 9-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 9-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:43:07,707 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 38, 7, 688408), 12, 20]) securityworker stdout | 2025-09-26 08:43:07,708 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 12-20 by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 12-20 by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 12-20 securityworker stdout | 2025-09-26 08:43:07,708 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 12-20 securityworker stdout | 2025-09-26 08:43:07,708 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 12-20 securityworker stdout | 2025-09-26 08:43:07,708 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:43:07,708 [86] [DEBUG] [util.migrate.allocator] Total range: 9-36 securityworker stdout | 2025-09-26 08:43:07,708 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stdout | 2025-09-26 08:43:07,708 [86] [DEBUG] [util.migrate.allocator] Left range 12-20 securityworker stdout | 2025-09-26 08:43:07,708 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 20-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 12-20 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total range: 9-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Left range 12-20 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 20-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:43:07,708 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:43:07,709 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 38, 7, 688408), 23, 31]) securityworker stdout | 2025-09-26 08:43:07,710 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 23-31 by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 23-31 by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 23-31 securityworker stdout | 2025-09-26 08:43:07,710 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 23-31 securityworker stdout | 2025-09-26 08:43:07,710 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 23-31 securityworker stdout | 2025-09-26 08:43:07,710 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stdout | 2025-09-26 08:43:07,710 [86] [DEBUG] [util.migrate.allocator] Total range: 9-36 securityworker stdout | 2025-09-26 08:43:07,710 [86] [DEBUG] [util.migrate.allocator] Selected random hole 2 with 3 total holes securityworker stdout | 2025-09-26 08:43:07,710 [86] [DEBUG] [util.migrate.allocator] Left range 12-20 securityworker stdout | 2025-09-26 08:43:07,710 [86] [DEBUG] [util.migrate.allocator] Right range 23-31 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 23-31 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total range: 9-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 2 with 3 total holes securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Left range 12-20 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Right range 23-31 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 20-23 securityworker stdout | 2025-09-26 08:43:07,710 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 20-23 securityworker stdout | 2025-09-26 08:43:07,710 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 20 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 20 securityworker stdout | 2025-09-26 08:43:07,711 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 38, 7, 688408), 20, 28]) securityworker stdout | 2025-09-26 08:43:07,711 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 20-28 by worker securityworker stdout | 2025-09-26 08:43:07,711 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 20-28 securityworker stdout | 2025-09-26 08:43:07,711 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 12-20 securityworker stdout | 2025-09-26 08:43:07,711 [86] [DEBUG] [util.migrate.allocator] Already merged with block 12-20 securityworker stdout | 2025-09-26 08:43:07,711 [86] [DEBUG] [util.migrate.allocator] Merging with block 23-31 securityworker stdout | 2025-09-26 08:43:07,711 [86] [DEBUG] [util.migrate.allocator] Discarding 2 obsolete blocks securityworker stdout | 2025-09-26 08:43:07,711 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 12-31 securityworker stdout | 2025-09-26 08:43:07,711 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:43:07,712 [86] [DEBUG] [util.migrate.allocator] Total range: 9-36 securityworker stdout | 2025-09-26 08:43:07,712 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:43:07,712 [86] [DEBUG] [util.migrate.allocator] Right range 12-31 securityworker stdout | 2025-09-26 08:43:07,712 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 9-12 securityworker stdout | 2025-09-26 08:43:07,712 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 9 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 20-28 by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 20-28 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Merging with the prev range: 12-20 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Already merged with block 12-20 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 23-31 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Discarding 2 obsolete blocks securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 12-31 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total range: 9-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Right range 12-31 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 9-12 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 9 securityworker stdout | 2025-09-26 08:43:07,712 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 38, 7, 688408), 9, 17]) securityworker stdout | 2025-09-26 08:43:07,713 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 9-17 by worker securityworker stdout | 2025-09-26 08:43:07,713 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 9-17 securityworker stdout | 2025-09-26 08:43:07,713 [86] [DEBUG] [util.migrate.allocator] Merging with block 12-31 securityworker stdout | 2025-09-26 08:43:07,713 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 31 securityworker stdout | 2025-09-26 08:43:07,713 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 9-17 by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 9-17 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 12-31 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 31 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:43:07,713 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:43:07,713 [86] [DEBUG] [util.migrate.allocator] Total range: 31-36 securityworker stdout | 2025-09-26 08:43:07,713 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:43:07,713 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 31-36 securityworker stdout | 2025-09-26 08:43:07,713 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 31 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total range: 31-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 31-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 31 securityworker stdout | 2025-09-26 08:43:07,714 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 38, 7, 688408), 31, 36]) securityworker stdout | 2025-09-26 08:43:07,714 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 31-36 by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 31-36 by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 31-36 securityworker stdout | 2025-09-26 08:43:07,714 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 31-36 securityworker stdout | 2025-09-26 08:43:07,714 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 31 securityworker stdout | 2025-09-26 08:43:07,714 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:43:07,714 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 31 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:43:07,714 [86] [DEBUG] [util.migrate.allocator] Total range: 36-31 securityworker stdout | 2025-09-26 08:43:07,715 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total range: 36-31 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:43:07,715 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:43:07,715 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:43:07,715 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:43:07,715 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:43:07,716 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 38, 7, 688408), 7, 15]) securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 7-15 by worker securityworker stdout | 2025-09-26 08:43:07,717 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 7-15 by worker securityworker stdout | 2025-09-26 08:43:07,717 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 7-15 securityworker stdout | 2025-09-26 08:43:07,717 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 7-15 securityworker stdout | 2025-09-26 08:43:07,717 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:43:07,717 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:43:07,717 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stdout | 2025-09-26 08:43:07,717 [86] [DEBUG] [util.migrate.allocator] Left range 7-15 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 7-15 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 7-15 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 1 with 2 total holes securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Left range 7-15 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 15-36 securityworker stdout | 2025-09-26 08:43:07,717 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 15-36 securityworker stdout | 2025-09-26 08:43:07,717 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:43:07,718 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 38, 7, 688408), 20, 28]) securityworker stdout | 2025-09-26 08:43:07,719 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 20-28 by worker securityworker stdout | 2025-09-26 08:43:07,719 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 20-28 securityworker stdout | 2025-09-26 08:43:07,719 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 20-28 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 20-28 by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 20-28 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Writing new block with range: 20-28 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stdout | 2025-09-26 08:43:07,719 [86] [DEBUG] [util.migrate.allocator] Total blocks: 2 securityworker stdout | 2025-09-26 08:43:07,719 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:43:07,719 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 3 total holes securityworker stdout | 2025-09-26 08:43:07,719 [86] [DEBUG] [util.migrate.allocator] Right range 7-15 securityworker stdout | 2025-09-26 08:43:07,719 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-7 securityworker stdout | 2025-09-26 08:43:07,719 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 3 total holes securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Right range 7-15 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-7 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:43:07,720 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 38, 7, 688408), 1, 9]) securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stdout | 2025-09-26 08:43:07,721 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-9 by worker securityworker stdout | 2025-09-26 08:43:07,721 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stdout | 2025-09-26 08:43:07,721 [86] [DEBUG] [util.migrate.allocator] Merging with block 7-15 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-9 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 7-15 securityworker stdout | 2025-09-26 08:43:07,721 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 15 securityworker stdout | 2025-09-26 08:43:07,721 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 15 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:43:07,721 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stdout | 2025-09-26 08:43:07,721 [86] [DEBUG] [util.migrate.allocator] Total range: 15-36 securityworker stdout | 2025-09-26 08:43:07,721 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stdout | 2025-09-26 08:43:07,721 [86] [DEBUG] [util.migrate.allocator] Right range 20-28 securityworker stdout | 2025-09-26 08:43:07,721 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 15-20 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 1 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total range: 15-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 2 total holes securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Right range 20-28 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 15-20 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 15 securityworker stdout | 2025-09-26 08:43:07,721 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 15 securityworker stdout | 2025-09-26 08:43:07,722 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 38, 7, 688408), 15, 23]) securityworker stdout | 2025-09-26 08:43:07,722 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 15-23 by worker securityworker stdout | 2025-09-26 08:43:07,723 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 15-23 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 15-23 by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 15-23 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Merging with block 20-28 securityworker stdout | 2025-09-26 08:43:07,723 [86] [DEBUG] [util.migrate.allocator] Merging with block 20-28 securityworker stdout | 2025-09-26 08:43:07,723 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 28 securityworker stdout | 2025-09-26 08:43:07,723 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stdout | 2025-09-26 08:43:07,723 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:43:07,723 [86] [DEBUG] [util.migrate.allocator] Total range: 28-36 securityworker stdout | 2025-09-26 08:43:07,723 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:43:07,723 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 28-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 28 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Discarding 1 obsolete blocks securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total range: 28-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 28-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:43:07,723 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 28 securityworker stdout | 2025-09-26 08:43:07,724 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 38, 7, 688408), 28, 36]) securityworker stdout | 2025-09-26 08:43:07,724 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 28-36 by worker securityworker stdout | 2025-09-26 08:43:07,724 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 28-36 securityworker stdout | 2025-09-26 08:43:07,724 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 28 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 28-36 by worker securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 28-36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 28 securityworker stdout | 2025-09-26 08:43:07,724 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:43:07,724 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:43:07,724 [86] [DEBUG] [util.migrate.allocator] Total range: 36-28 securityworker stdout | 2025-09-26 08:43:07,724 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:43:07,724 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] Total range: 36-28 securityworker stderr | 2025-09-26 08:43:07 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:43:07,725 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:43:37 GMT)" executed successfully namespacegcworker stdout | 2025-09-26 08:43:08,794 [66] [DEBUG] [apscheduler.scheduler] Looking for jobs to run namespacegcworker stdout | 2025-09-26 08:43:08,794 [66] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:59.791127+00:00 (in 50.996882 seconds) namespacegcworker stdout | 2025-09-26 08:43:08,794 [66] [INFO] [apscheduler.executors.default] Running job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:44:08 GMT)" (scheduled at 2025-09-26 08:43:08.793810+00:00) namespacegcworker stdout | 2025-09-26 08:43:08,794 [66] [DEBUG] [workers.queueworker] Running watchdog. namespacegcworker stdout | 2025-09-26 08:43:08,794 [66] [INFO] [apscheduler.executors.default] Job "QueueWorker.run_watchdog (trigger: interval[0:01:00], next run at: 2025-09-26 08:44:08 GMT)" executed successfully gunicorn-web stdout | 2025-09-26 08:43:09,899 [250] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '250'} gunicorn-web stdout | 2025-09-26 08:43:09,905 [247] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '247'} gunicorn-web stdout | 2025-09-26 08:43:09,912 [248] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '248'} gunicorn-web stdout | 2025-09-26 08:43:09,926 [249] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '249'} gunicorn-web stdout | 2025-09-26 08:43:09,934 [61] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'web:application', 'pid': '61'} gcworker stdout | 2025-09-26 08:43:10,001 [57] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'gcworker.py', 'pid': '57'} securityscanningnotificationworker stdout | 2025-09-26 08:43:10,210 [82] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'securityscanningnotificationworker.py', 'pid': '82'} queuecleanupworker stdout | 2025-09-26 08:43:10,424 [71] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'queuecleanupworker.py', 'pid': '71'} securityscanningnotificationworker stdout | 2025-09-26 08:43:10,584 [82] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityscanningnotificationworker stdout | 2025-09-26 08:43:10,584 [82] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:28.587130+00:00 (in 18.002335 seconds) securityscanningnotificationworker stdout | 2025-09-26 08:43:10,584 [82] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:44:10 GMT)" (scheduled at 2025-09-26 08:43:10.584403+00:00) securityscanningnotificationworker stdout | 2025-09-26 08:43:10,585 [82] [DEBUG] [workers.queueworker] Getting work item from queue. securityscanningnotificationworker stdout | 2025-09-26 08:43:10,585 [82] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 43, 10, 585037), True, datetime.datetime(2025, 9, 26, 8, 43, 10, 585037), 0, 'secscanv4/%', 50, 1, 0]) securityscanningnotificationworker stdout | 2025-09-26 08:43:10,592 [82] [DEBUG] [workers.queueworker] No more work. securityscanningnotificationworker stdout | 2025-09-26 08:43:10,593 [82] [DEBUG] [data.database] Disconnecting from database. securityscanningnotificationworker stdout | 2025-09-26 08:43:10,593 [82] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:01:00], next run at: 2025-09-26 08:44:10 GMT)" executed successfully autopruneworker stdout | 2025-09-26 08:43:10,598 [49] [DEBUG] [apscheduler.scheduler] Looking for jobs to run autopruneworker stdout | 2025-09-26 08:43:10,598 [49] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:40.598100+00:00 (in 29.999580 seconds) autopruneworker stdout | 2025-09-26 08:43:10,598 [49] [INFO] [apscheduler.executors.default] Running job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:43:40 GMT)" (scheduled at 2025-09-26 08:43:10.598100+00:00) autopruneworker stdout | 2025-09-26 08:43:10,603 [49] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."namespace_id", "t1"."last_ran_ms", "t1"."status" FROM "autoprunetaskstatus" AS "t1" WHERE (("t1"."namespace_id" NOT IN (SELECT "t2"."id" FROM "user" AS "t2" WHERE (("t2"."enabled" = %s) AND ("t2"."id" = "t1"."namespace_id")))) AND (("t1"."last_ran_ms" < %s) OR ("t1"."last_ran_ms" IS %s))) ORDER BY "t1"."last_ran_ms" ASC NULLS first LIMIT %s OFFSET %s FOR UPDATE SKIP LOCKED', [False, 1758872590602, None, 1, 0]) autopruneworker stdout | 2025-09-26 08:43:10,616 [49] [INFO] [__main__] no autoprune tasks found, exiting... autopruneworker stdout | 2025-09-26 08:43:10,616 [49] [DEBUG] [data.database] Disconnecting from database. autopruneworker stdout | 2025-09-26 08:43:10,616 [49] [INFO] [apscheduler.executors.default] Job "AutoPruneWorker.prune (trigger: interval[0:00:30], next run at: 2025-09-26 08:43:40 GMT)" executed successfully gunicorn-secscan stdout | 2025-09-26 08:43:10,624 [60] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '60'} gunicorn-secscan stdout | 2025-09-26 08:43:10,628 [239] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '239'} gunicorn-secscan stdout | 2025-09-26 08:43:10,633 [243] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'secscan:application', 'pid': '243'} notificationworker stdout | 2025-09-26 08:43:10,693 [68] [DEBUG] [apscheduler.scheduler] Looking for jobs to run notificationworker stdout | 2025-09-26 08:43:10,694 [68] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:20.692901+00:00 (in 9.998865 seconds) notificationworker stdout | 2025-09-26 08:43:10,694 [68] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:43:20 GMT)" (scheduled at 2025-09-26 08:43:10.692901+00:00) notificationworker stdout | 2025-09-26 08:43:10,694 [68] [DEBUG] [workers.queueworker] Getting work item from queue. notificationworker stdout | 2025-09-26 08:43:10,695 [68] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 43, 10, 694643), True, datetime.datetime(2025, 9, 26, 8, 43, 10, 694643), 0, 'notification/%', 50, 1, 0]) notificationworker stdout | 2025-09-26 08:43:10,701 [68] [DEBUG] [workers.queueworker] No more work. notificationworker stdout | 2025-09-26 08:43:10,702 [68] [DEBUG] [data.database] Disconnecting from database. notificationworker stdout | 2025-09-26 08:43:10,702 [68] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:43:20 GMT)" executed successfully chunkcleanupworker stdout | 2025-09-26 08:43:11,250 [53] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'chunkcleanupworker.py', 'pid': '53'} securityworker stdout | 2025-09-26 08:43:11,685 [86] [DEBUG] [apscheduler.scheduler] Looking for jobs to run securityworker stdout | 2025-09-26 08:43:11,685 [86] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:37.683505+00:00 (in 25.998216 seconds) securityworker stdout | 2025-09-26 08:43:11,685 [86] [INFO] [apscheduler.executors.default] Running job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:43:41 GMT)" (scheduled at 2025-09-26 08:43:11.684816+00:00) securityworker stdout | 2025-09-26 08:43:11,685 [86] [DEBUG] [util.secscan.v4.api] generated jwt for security scanner request securityworker stdout | 2025-09-26 08:43:11,685 [86] [DEBUG] [util.secscan.v4.api] GETing security URL http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local/indexer/api/v1/index_state securityworker stdout | 2025-09-26 08:43:11,687 [86] [DEBUG] [urllib3.connectionpool] http://quayregistry-clair-app.quay-enterprise-15475.svc.cluster.local:80 "GET /indexer/api/v1/index_state HTTP/1.1" 200 None securityworker stdout | 2025-09-26 08:43:11,690 [86] [DEBUG] [peewee] ('SELECT Max("t1"."id") FROM "manifest" AS "t1"', []) securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:43:11,696 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:43:11,696 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:43:11,696 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stdout | 2025-09-26 08:43:11,696 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:43:11,697 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" LEFT OUTER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE ((("t2"."id" IS %s) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [None, 1, 36]) securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:43:11,699 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:43:11,699 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:43:11,699 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:43:11,699 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:43:11,699 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:43:11,699 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:43:11,699 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:43:11,699 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:43:11,699 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:43:11,699 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:43:11,699 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:43:11,700 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((("t2"."index_status" = %s) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-1, datetime.datetime(2025, 9, 26, 8, 38, 11, 689959), 1, 36]) securityworker stdout | 2025-09-26 08:43:11,701 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:43:11,701 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:43:11,701 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:43:11,701 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:43:11,701 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:43:11,701 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stdout | 2025-09-26 08:43:11,701 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:43:11,701 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stdout | 2025-09-26 08:43:11,701 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stdout | 2025-09-26 08:43:11,701 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Total range: 1-36 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Selected random hole 0 with 1 total holes securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Selecting from hole range: 1-36 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:43:11,701 [86] [DEBUG] [util.migrate.allocator] Rand max bound: 1 securityworker stdout | 2025-09-26 08:43:11,702 [86] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."repository_id", "t1"."digest", "t1"."media_type_id", "t1"."manifest_bytes", "t1"."config_media_type", "t1"."layers_compressed_size", "t1"."subject", "t1"."subject_backfilled", "t1"."artifact_type", "t1"."artifact_type_backfilled", "t2"."id", "t2"."manifest_id", "t2"."repository_id", "t2"."index_status", "t2"."error_json", "t2"."last_indexed", "t2"."indexer_hash", "t2"."indexer_version", "t2"."metadata_json" FROM "manifest" AS "t1" INNER JOIN "manifestsecuritystatus" AS "t2" ON ("t2"."manifest_id" = "t1"."id") WHERE (((((("t2"."index_status" != %s) AND ("t2"."index_status" != %s)) AND ("t2"."indexer_hash" != %s)) AND ("t2"."last_indexed" < %s)) AND ("t1"."id" >= %s)) AND ("t1"."id" < %s)) ORDER BY "t1"."id"', [-2, -3, '37b46b4a70b6f1a19d5e4e18d21f57ff', datetime.datetime(2025, 9, 26, 8, 38, 11, 689959), 1, 36]) securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:43:11,703 [86] [DEBUG] [util.migrate.allocator] No candidates, marking entire block completed 1-36 by worker securityworker stdout | 2025-09-26 08:43:11,703 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stdout | 2025-09-26 08:43:11,703 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stdout | 2025-09-26 08:43:11,703 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stdout | 2025-09-26 08:43:11,703 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stdout | 2025-09-26 08:43:11,703 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Marking the range completed: 1-36 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new max to: 1 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Discarding block and setting new min to: 36 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Total blocks: 0 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] Total range: 36-1 securityworker stderr | 2025-09-26 08:43:11 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:43:11,703 [86] [DEBUG] [util.migrate.allocator] No more work by worker securityworker stdout | 2025-09-26 08:43:11,703 [86] [DEBUG] [data.database] Disconnecting from database. securityworker stdout | 2025-09-26 08:43:11,703 [86] [INFO] [apscheduler.executors.default] Job "SecurityWorker._index_recent_manifests_in_scanner (trigger: interval[0:00:30], next run at: 2025-09-26 08:43:41 GMT)" executed successfully repositorygcworker stdout | 2025-09-26 08:43:12,248 [81] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'repositorygcworker.py', 'pid': '81'} proxycacheblobworker stdout | 2025-09-26 08:43:12,477 [69] [DEBUG] [apscheduler.scheduler] Looking for jobs to run proxycacheblobworker stdout | 2025-09-26 08:43:12,477 [69] [DEBUG] [apscheduler.scheduler] Next wakeup is due at 2025-09-26 08:43:22.477454+00:00 (in 9.999616 seconds) proxycacheblobworker stdout | 2025-09-26 08:43:12,478 [69] [INFO] [apscheduler.executors.default] Running job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:43:22 GMT)" (scheduled at 2025-09-26 08:43:12.477454+00:00) proxycacheblobworker stdout | 2025-09-26 08:43:12,478 [69] [DEBUG] [workers.queueworker] Getting work item from queue. proxycacheblobworker stdout | 2025-09-26 08:43:12,479 [69] [DEBUG] [peewee] ('SELECT "t1"."id", "t1"."queue_name", "t1"."body", "t1"."available_after", "t1"."available", "t1"."processing_expires", "t1"."retries_remaining", "t1"."state_id" FROM "queueitem" AS "t1" INNER JOIN (SELECT "t1"."id" FROM "queueitem" AS "t1" WHERE (((("t1"."available_after" <= %s) AND (("t1"."available" = %s) OR ("t1"."processing_expires" <= %s))) AND ("t1"."retries_remaining" > %s)) AND ("t1"."queue_name" ILIKE %s)) LIMIT %s) AS "j1" ON ("t1"."id" = "j1"."id") ORDER BY Random() LIMIT %s OFFSET %s', [datetime.datetime(2025, 9, 26, 8, 43, 12, 478235), True, datetime.datetime(2025, 9, 26, 8, 43, 12, 478235), 0, 'proxycacheblob/%', 50, 1, 0]) proxycacheblobworker stdout | 2025-09-26 08:43:12,486 [69] [DEBUG] [workers.queueworker] No more work. proxycacheblobworker stdout | 2025-09-26 08:43:12,486 [69] [DEBUG] [data.database] Disconnecting from database. proxycacheblobworker stdout | 2025-09-26 08:43:12,487 [69] [INFO] [apscheduler.executors.default] Job "QueueWorker.poll_queue (trigger: interval[0:00:10], next run at: 2025-09-26 08:43:22 GMT)" executed successfully servicekey stdout | 2025-09-26 08:43:12,843 [89] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'servicekeyworker.py', 'pid': '89'} teamsyncworker stdout | 2025-09-26 08:43:12,919 [95] [DEBUG] [util.metrics.prometheus] pushed registry to pushgateway at http://localhost:9091 with grouping key {'host': 'quayregistry-quay-app-56c546d756-2q4zr', 'process_name': 'teamsyncworker.py', 'pid': '95'}